/**
 * The MIT License (MIT)
 *
 * Copyright (c) 2018-2019 Erik Moqvist
 *
 * Permission is hereby granted, free of charge, to any person
 * obtaining a copy of this software and associated documentation
 * files (the "Software"), to deal in the Software without
 * restriction, including without limitation the rights to use, copy,
 * modify, merge, publish, distribute, sublicense, and/or sell copies
 * of the Software, and to permit persons to whom the Software is
 * furnished to do so, subject to the following conditions:
 *
 * The above copyright notice and this permission notice shall be
 * included in all copies or substantial portions of the Software.
 *
 * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND,
 * EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF
 * MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND
 * NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS
 * BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN
 * ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN
 * CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
 * SOFTWARE.
 */

/**
 * This file was generated by cantools version 39.4.0 Sat Dec  2 17:22:10 2023.
 */

#ifndef SR439_H
#define SR439_H

#ifdef __cplusplus
extern "C" {
#endif

#include <stdint.h>
#include <stdbool.h>
#include <stddef.h>

#ifndef EINVAL
#    define EINVAL 22
#endif

/* Frame ids. */
#define SR439_VEH_INFO2_FRAME_ID (0x301u)
#define SR439_VEH_INFO1_FRAME_ID (0x300u)
#define SR439_VEH_INFO_RADAR1_FRAME_ID (0x303u)
#define SR439_VEH_INFO_RADAR2_FRAME_ID (0x305u)
#define SR439_CHANGCHENG_TEST_STATE_FRAME_ID (0x319u)
#define SR439_OBJ_END_MSG_RR_FRAME_ID (0x63fu)
#define SR439_OBJ_END_MSG_FR_FRAME_ID (0x62fu)
#define SR439_OBJ_END_MSG_FL_FRAME_ID (0x61fu)
#define SR439_OBJ_END_MSG_RL_FRAME_ID (0x60fu)
#define SR439_OBJ_QUALITY_INFO_RR_FRAME_ID (0x63cu)
#define SR439_OBJ_QUALITY_INFO_FR_FRAME_ID (0x62cu)
#define SR439_OBJ_QUALITY_INFO_FL_FRAME_ID (0x61cu)
#define SR439_OBJ_GENERAL_INFO_RR_FRAME_ID (0x63bu)
#define SR439_OBJ_GENERAL_INFO_FR_FRAME_ID (0x62bu)
#define SR439_OBJ_GENERAL_INFO_FL_FRAME_ID (0x61bu)
#define SR439_OBJ_EXTENDED_INFO_RR_FRAME_ID (0x63du)
#define SR439_OBJ_EXTENDED_INFO_FR_FRAME_ID (0x62du)
#define SR439_OBJ_EXTENDED_INFO_FL_FRAME_ID (0x61du)
#define SR439_OBJ_COLLISION_INFO_RR_FRAME_ID (0x63eu)
#define SR439_OBJ_COLLISION_INFO_FR_FRAME_ID (0x62eu)
#define SR439_OBJ_COLLISION_INFO_FL_FRAME_ID (0x61eu)
#define SR439_OBJ_0_STATUS_RR_FRAME_ID (0x63au)
#define SR439_OBJ_0_STATUS_FR_FRAME_ID (0x62au)
#define SR439_OBJ_0_STATUS_FL_FRAME_ID (0x61au)
#define SR439_CLUSTER_HEADER_RR_FRAME_ID (0x603u)
#define SR439_CLUSTER_HEADER_FR_FRAME_ID (0x602u)
#define SR439_CLUSTER_HEADER_FL_FRAME_ID (0x601u)
#define SR439_CLUSTER_GENERAL_INFORMATION_RR_FRAME_ID (0x704u)
#define SR439_CLUSTER_GENERAL_INFORMATION_FR_FRAME_ID (0x703u)
#define SR439_CLUSTER_GENERAL_INFORMATION_FL_FRAME_ID (0x702u)
#define SR439_OBJ_COLLISION_INFO_RL_FRAME_ID (0x60eu)
#define SR439_OBJ_EXTENDED_INFO_RL_FRAME_ID (0x60du)
#define SR439_OBJ_QUALITY_INFO_RL_FRAME_ID (0x60cu)
#define SR439_RADAR_REAR_ADAS_FRAME_ID (0x480u)
#define SR439_OBJ_GENERAL_INFO_RL_FRAME_ID (0x60bu)
#define SR439_OBJ_0_STATUS_RL_FRAME_ID (0x60au)
#define SR439_CLUSTER_GENERAL_INFORMATION_RL_FRAME_ID (0x701u)
#define SR439_CLUSTER_HEADER_RL_FRAME_ID (0x600u)

/* Frame lengths in bytes. */
#define SR439_VEH_INFO2_LENGTH (8u)
#define SR439_VEH_INFO1_LENGTH (8u)
#define SR439_VEH_INFO_RADAR1_LENGTH (8u)
#define SR439_VEH_INFO_RADAR2_LENGTH (8u)
#define SR439_CHANGCHENG_TEST_STATE_LENGTH (8u)
#define SR439_OBJ_END_MSG_RR_LENGTH (8u)
#define SR439_OBJ_END_MSG_FR_LENGTH (8u)
#define SR439_OBJ_END_MSG_FL_LENGTH (8u)
#define SR439_OBJ_END_MSG_RL_LENGTH (8u)
#define SR439_OBJ_QUALITY_INFO_RR_LENGTH (8u)
#define SR439_OBJ_QUALITY_INFO_FR_LENGTH (8u)
#define SR439_OBJ_QUALITY_INFO_FL_LENGTH (8u)
#define SR439_OBJ_GENERAL_INFO_RR_LENGTH (8u)
#define SR439_OBJ_GENERAL_INFO_FR_LENGTH (8u)
#define SR439_OBJ_GENERAL_INFO_FL_LENGTH (8u)
#define SR439_OBJ_EXTENDED_INFO_RR_LENGTH (8u)
#define SR439_OBJ_EXTENDED_INFO_FR_LENGTH (8u)
#define SR439_OBJ_EXTENDED_INFO_FL_LENGTH (8u)
#define SR439_OBJ_COLLISION_INFO_RR_LENGTH (8u)
#define SR439_OBJ_COLLISION_INFO_FR_LENGTH (8u)
#define SR439_OBJ_COLLISION_INFO_FL_LENGTH (8u)
#define SR439_OBJ_0_STATUS_RR_LENGTH (8u)
#define SR439_OBJ_0_STATUS_FR_LENGTH (8u)
#define SR439_OBJ_0_STATUS_FL_LENGTH (8u)
#define SR439_CLUSTER_HEADER_RR_LENGTH (24u)
#define SR439_CLUSTER_HEADER_FR_LENGTH (24u)
#define SR439_CLUSTER_HEADER_FL_LENGTH (24u)
#define SR439_CLUSTER_GENERAL_INFORMATION_RR_LENGTH (64u)
#define SR439_CLUSTER_GENERAL_INFORMATION_FR_LENGTH (64u)
#define SR439_CLUSTER_GENERAL_INFORMATION_FL_LENGTH (64u)
#define SR439_OBJ_COLLISION_INFO_RL_LENGTH (8u)
#define SR439_OBJ_EXTENDED_INFO_RL_LENGTH (8u)
#define SR439_OBJ_QUALITY_INFO_RL_LENGTH (8u)
#define SR439_RADAR_REAR_ADAS_LENGTH (8u)
#define SR439_OBJ_GENERAL_INFO_RL_LENGTH (8u)
#define SR439_OBJ_0_STATUS_RL_LENGTH (8u)
#define SR439_CLUSTER_GENERAL_INFORMATION_RL_LENGTH (64u)
#define SR439_CLUSTER_HEADER_RL_LENGTH (24u)

/* Extended or standard frame types. */
#define SR439_VEH_INFO2_IS_EXTENDED (0)
#define SR439_VEH_INFO1_IS_EXTENDED (0)
#define SR439_VEH_INFO_RADAR1_IS_EXTENDED (0)
#define SR439_VEH_INFO_RADAR2_IS_EXTENDED (0)
#define SR439_CHANGCHENG_TEST_STATE_IS_EXTENDED (0)
#define SR439_OBJ_END_MSG_RR_IS_EXTENDED (0)
#define SR439_OBJ_END_MSG_FR_IS_EXTENDED (0)
#define SR439_OBJ_END_MSG_FL_IS_EXTENDED (0)
#define SR439_OBJ_END_MSG_RL_IS_EXTENDED (0)
#define SR439_OBJ_QUALITY_INFO_RR_IS_EXTENDED (0)
#define SR439_OBJ_QUALITY_INFO_FR_IS_EXTENDED (0)
#define SR439_OBJ_QUALITY_INFO_FL_IS_EXTENDED (0)
#define SR439_OBJ_GENERAL_INFO_RR_IS_EXTENDED (0)
#define SR439_OBJ_GENERAL_INFO_FR_IS_EXTENDED (0)
#define SR439_OBJ_GENERAL_INFO_FL_IS_EXTENDED (0)
#define SR439_OBJ_EXTENDED_INFO_RR_IS_EXTENDED (0)
#define SR439_OBJ_EXTENDED_INFO_FR_IS_EXTENDED (0)
#define SR439_OBJ_EXTENDED_INFO_FL_IS_EXTENDED (0)
#define SR439_OBJ_COLLISION_INFO_RR_IS_EXTENDED (0)
#define SR439_OBJ_COLLISION_INFO_FR_IS_EXTENDED (0)
#define SR439_OBJ_COLLISION_INFO_FL_IS_EXTENDED (0)
#define SR439_OBJ_0_STATUS_RR_IS_EXTENDED (0)
#define SR439_OBJ_0_STATUS_FR_IS_EXTENDED (0)
#define SR439_OBJ_0_STATUS_FL_IS_EXTENDED (0)
#define SR439_CLUSTER_HEADER_RR_IS_EXTENDED (0)
#define SR439_CLUSTER_HEADER_FR_IS_EXTENDED (0)
#define SR439_CLUSTER_HEADER_FL_IS_EXTENDED (0)
#define SR439_CLUSTER_GENERAL_INFORMATION_RR_IS_EXTENDED (0)
#define SR439_CLUSTER_GENERAL_INFORMATION_FR_IS_EXTENDED (0)
#define SR439_CLUSTER_GENERAL_INFORMATION_FL_IS_EXTENDED (0)
#define SR439_OBJ_COLLISION_INFO_RL_IS_EXTENDED (0)
#define SR439_OBJ_EXTENDED_INFO_RL_IS_EXTENDED (0)
#define SR439_OBJ_QUALITY_INFO_RL_IS_EXTENDED (0)
#define SR439_RADAR_REAR_ADAS_IS_EXTENDED (0)
#define SR439_OBJ_GENERAL_INFO_RL_IS_EXTENDED (0)
#define SR439_OBJ_0_STATUS_RL_IS_EXTENDED (0)
#define SR439_CLUSTER_GENERAL_INFORMATION_RL_IS_EXTENDED (0)
#define SR439_CLUSTER_HEADER_RL_IS_EXTENDED (0)

/* Frame cycle times in milliseconds. */


/* Signal choices. */
#define SR439_OBJ_QUALITY_INFO_RR_OBJ_CIPV_NO_ACTIVE_CHOICE (0u)
#define SR439_OBJ_QUALITY_INFO_RR_OBJ_CIPV_ACTIVE_CHOICE (1u)

#define SR439_OBJ_QUALITY_INFO_RR_OBJ_PROB_OF_CLASS_INVALID_CHOICE (0u)
#define SR439_OBJ_QUALITY_INFO_RR_OBJ_PROB_OF_CLASS__25__CHOICE (1u)
#define SR439_OBJ_QUALITY_INFO_RR_OBJ_PROB_OF_CLASS__50__CHOICE (2u)
#define SR439_OBJ_QUALITY_INFO_RR_OBJ_PROB_OF_CLASS__75__CHOICE (3u)
#define SR439_OBJ_QUALITY_INFO_RR_OBJ_PROB_OF_CLASS__90__CHOICE (4u)
#define SR439_OBJ_QUALITY_INFO_RR_OBJ_PROB_OF_CLASS__99__CHOICE (5u)
#define SR439_OBJ_QUALITY_INFO_RR_OBJ_PROB_OF_CLASS__99_9__CHOICE (6u)
#define SR439_OBJ_QUALITY_INFO_RR_OBJ_PROB_OF_CLASS___100__CHOICE (7u)

#define SR439_OBJ_QUALITY_INFO_RR_OBJ_PROB_OF_EXIST_INVALID_CHOICE (0u)
#define SR439_OBJ_QUALITY_INFO_RR_OBJ_PROB_OF_EXIST__25__CHOICE (1u)
#define SR439_OBJ_QUALITY_INFO_RR_OBJ_PROB_OF_EXIST__50__CHOICE (2u)
#define SR439_OBJ_QUALITY_INFO_RR_OBJ_PROB_OF_EXIST__75__CHOICE (3u)
#define SR439_OBJ_QUALITY_INFO_RR_OBJ_PROB_OF_EXIST__90__CHOICE (4u)
#define SR439_OBJ_QUALITY_INFO_RR_OBJ_PROB_OF_EXIST__99__CHOICE (5u)
#define SR439_OBJ_QUALITY_INFO_RR_OBJ_PROB_OF_EXIST__99_9__CHOICE (6u)
#define SR439_OBJ_QUALITY_INFO_RR_OBJ_PROB_OF_EXIST___100__CHOICE (7u)

#define SR439_OBJ_QUALITY_INFO_RR_OBJ_MEAS_STATE_NOT__CONFIRMED_CHOICE (0u)
#define SR439_OBJ_QUALITY_INFO_RR_OBJ_MEAS_STATE_NEW_CHOICE (1u)
#define SR439_OBJ_QUALITY_INFO_RR_OBJ_MEAS_STATE_MEASURED_CHOICE (2u)
#define SR439_OBJ_QUALITY_INFO_RR_OBJ_MEAS_STATE_PREDICITED_CHOICE (3u)
#define SR439_OBJ_QUALITY_INFO_RR_OBJ_MEAS_STATE_RESERVED_4_CHOICE (4u)
#define SR439_OBJ_QUALITY_INFO_RR_OBJ_MEAS_STATE_RESERVED_5_CHOICE (5u)
#define SR439_OBJ_QUALITY_INFO_RR_OBJ_MEAS_STATE_RESERVED_6_CHOICE (6u)
#define SR439_OBJ_QUALITY_INFO_RR_OBJ_MEAS_STATE_RESERVED_7_CHOICE (7u)

#define SR439_OBJ_QUALITY_INFO_FR_OBJ_CIPV_NO_ACTIVE_CHOICE (0u)
#define SR439_OBJ_QUALITY_INFO_FR_OBJ_CIPV_ACTIVE_CHOICE (1u)

#define SR439_OBJ_QUALITY_INFO_FR_OBJ_PROB_OF_CLASS_INVALID_CHOICE (0u)
#define SR439_OBJ_QUALITY_INFO_FR_OBJ_PROB_OF_CLASS__25__CHOICE (1u)
#define SR439_OBJ_QUALITY_INFO_FR_OBJ_PROB_OF_CLASS__50__CHOICE (2u)
#define SR439_OBJ_QUALITY_INFO_FR_OBJ_PROB_OF_CLASS__75__CHOICE (3u)
#define SR439_OBJ_QUALITY_INFO_FR_OBJ_PROB_OF_CLASS__90__CHOICE (4u)
#define SR439_OBJ_QUALITY_INFO_FR_OBJ_PROB_OF_CLASS__99__CHOICE (5u)
#define SR439_OBJ_QUALITY_INFO_FR_OBJ_PROB_OF_CLASS__99_9__CHOICE (6u)
#define SR439_OBJ_QUALITY_INFO_FR_OBJ_PROB_OF_CLASS___100__CHOICE (7u)

#define SR439_OBJ_QUALITY_INFO_FR_OBJ_PROB_OF_EXIST_INVALID_CHOICE (0u)
#define SR439_OBJ_QUALITY_INFO_FR_OBJ_PROB_OF_EXIST__25__CHOICE (1u)
#define SR439_OBJ_QUALITY_INFO_FR_OBJ_PROB_OF_EXIST__50__CHOICE (2u)
#define SR439_OBJ_QUALITY_INFO_FR_OBJ_PROB_OF_EXIST__75__CHOICE (3u)
#define SR439_OBJ_QUALITY_INFO_FR_OBJ_PROB_OF_EXIST__90__CHOICE (4u)
#define SR439_OBJ_QUALITY_INFO_FR_OBJ_PROB_OF_EXIST__99__CHOICE (5u)
#define SR439_OBJ_QUALITY_INFO_FR_OBJ_PROB_OF_EXIST__99_9__CHOICE (6u)
#define SR439_OBJ_QUALITY_INFO_FR_OBJ_PROB_OF_EXIST___100__CHOICE (7u)

#define SR439_OBJ_QUALITY_INFO_FR_OBJ_MEAS_STATE_NOT__CONFIRMED_CHOICE (0u)
#define SR439_OBJ_QUALITY_INFO_FR_OBJ_MEAS_STATE_NEW_CHOICE (1u)
#define SR439_OBJ_QUALITY_INFO_FR_OBJ_MEAS_STATE_MEASURED_CHOICE (2u)
#define SR439_OBJ_QUALITY_INFO_FR_OBJ_MEAS_STATE_PREDICITED_CHOICE (3u)
#define SR439_OBJ_QUALITY_INFO_FR_OBJ_MEAS_STATE_RESERVED_4_CHOICE (4u)
#define SR439_OBJ_QUALITY_INFO_FR_OBJ_MEAS_STATE_RESERVED_5_CHOICE (5u)
#define SR439_OBJ_QUALITY_INFO_FR_OBJ_MEAS_STATE_RESERVED_6_CHOICE (6u)
#define SR439_OBJ_QUALITY_INFO_FR_OBJ_MEAS_STATE_RESERVED_7_CHOICE (7u)

#define SR439_OBJ_QUALITY_INFO_FL_OBJ_CIPV_NO_ACTIVE_CHOICE (0u)
#define SR439_OBJ_QUALITY_INFO_FL_OBJ_CIPV_ACTIVE_CHOICE (1u)

#define SR439_OBJ_QUALITY_INFO_FL_OBJ_PROB_OF_CLASS_INVALID_CHOICE (0u)
#define SR439_OBJ_QUALITY_INFO_FL_OBJ_PROB_OF_CLASS__25__CHOICE (1u)
#define SR439_OBJ_QUALITY_INFO_FL_OBJ_PROB_OF_CLASS__50__CHOICE (2u)
#define SR439_OBJ_QUALITY_INFO_FL_OBJ_PROB_OF_CLASS__75__CHOICE (3u)
#define SR439_OBJ_QUALITY_INFO_FL_OBJ_PROB_OF_CLASS__90__CHOICE (4u)
#define SR439_OBJ_QUALITY_INFO_FL_OBJ_PROB_OF_CLASS__99__CHOICE (5u)
#define SR439_OBJ_QUALITY_INFO_FL_OBJ_PROB_OF_CLASS__99_9__CHOICE (6u)
#define SR439_OBJ_QUALITY_INFO_FL_OBJ_PROB_OF_CLASS___100__CHOICE (7u)

#define SR439_OBJ_QUALITY_INFO_FL_OBJ_PROB_OF_EXIST_INVALID_CHOICE (0u)
#define SR439_OBJ_QUALITY_INFO_FL_OBJ_PROB_OF_EXIST__25__CHOICE (1u)
#define SR439_OBJ_QUALITY_INFO_FL_OBJ_PROB_OF_EXIST__50__CHOICE (2u)
#define SR439_OBJ_QUALITY_INFO_FL_OBJ_PROB_OF_EXIST__75__CHOICE (3u)
#define SR439_OBJ_QUALITY_INFO_FL_OBJ_PROB_OF_EXIST__90__CHOICE (4u)
#define SR439_OBJ_QUALITY_INFO_FL_OBJ_PROB_OF_EXIST__99__CHOICE (5u)
#define SR439_OBJ_QUALITY_INFO_FL_OBJ_PROB_OF_EXIST__99_9__CHOICE (6u)
#define SR439_OBJ_QUALITY_INFO_FL_OBJ_PROB_OF_EXIST___100__CHOICE (7u)

#define SR439_OBJ_QUALITY_INFO_FL_OBJ_MEAS_STATE_NOT__CONFIRMED_CHOICE (0u)
#define SR439_OBJ_QUALITY_INFO_FL_OBJ_MEAS_STATE_NEW_CHOICE (1u)
#define SR439_OBJ_QUALITY_INFO_FL_OBJ_MEAS_STATE_MEASURED_CHOICE (2u)
#define SR439_OBJ_QUALITY_INFO_FL_OBJ_MEAS_STATE_PREDICITED_CHOICE (3u)
#define SR439_OBJ_QUALITY_INFO_FL_OBJ_MEAS_STATE_RESERVED_4_CHOICE (4u)
#define SR439_OBJ_QUALITY_INFO_FL_OBJ_MEAS_STATE_RESERVED_5_CHOICE (5u)
#define SR439_OBJ_QUALITY_INFO_FL_OBJ_MEAS_STATE_RESERVED_6_CHOICE (6u)
#define SR439_OBJ_QUALITY_INFO_FL_OBJ_MEAS_STATE_RESERVED_7_CHOICE (7u)

#define SR439_OBJ_GENERAL_INFO_RR_OBJ_DYN_PROP_DEFAULT_CHOICE (0u)
#define SR439_OBJ_GENERAL_INFO_RR_OBJ_DYN_PROP_STATIC_CHOICE (1u)
#define SR439_OBJ_GENERAL_INFO_RR_OBJ_DYN_PROP_STOP_CHOICE (2u)
#define SR439_OBJ_GENERAL_INFO_RR_OBJ_DYN_PROP_APPROACHING_CHOICE (3u)
#define SR439_OBJ_GENERAL_INFO_RR_OBJ_DYN_PROP_GOING_CHOICE (4u)
#define SR439_OBJ_GENERAL_INFO_RR_OBJ_DYN_PROP_TRAVERSE_CHOICE (5u)
#define SR439_OBJ_GENERAL_INFO_RR_OBJ_DYN_PROP_CROSS_CHOICE (6u)
#define SR439_OBJ_GENERAL_INFO_RR_OBJ_DYN_PROP_HIGH_TARGET_CHOICE (7u)
#define SR439_OBJ_GENERAL_INFO_RR_OBJ_DYN_PROP_LOW_TARGET_CHOICE (8u)
#define SR439_OBJ_GENERAL_INFO_RR_OBJ_DYN_PROP_RESERVED_9_CHOICE (9u)
#define SR439_OBJ_GENERAL_INFO_RR_OBJ_DYN_PROP_RESERVED_10_CHOICE (10u)
#define SR439_OBJ_GENERAL_INFO_RR_OBJ_DYN_PROP_RESERVED_11_CHOICE (11u)
#define SR439_OBJ_GENERAL_INFO_RR_OBJ_DYN_PROP_RESERVED_12_CHOICE (12u)
#define SR439_OBJ_GENERAL_INFO_RR_OBJ_DYN_PROP_RESERVED_13_CHOICE (13u)
#define SR439_OBJ_GENERAL_INFO_RR_OBJ_DYN_PROP_RESERVED_14_CHOICE (14u)
#define SR439_OBJ_GENERAL_INFO_RR_OBJ_DYN_PROP_RESERVED_15_CHOICE (15u)

#define SR439_OBJ_GENERAL_INFO_FR_OBJ_DYN_PROP_DEFAULT_CHOICE (0u)
#define SR439_OBJ_GENERAL_INFO_FR_OBJ_DYN_PROP_STATIC_CHOICE (1u)
#define SR439_OBJ_GENERAL_INFO_FR_OBJ_DYN_PROP_STOP_CHOICE (2u)
#define SR439_OBJ_GENERAL_INFO_FR_OBJ_DYN_PROP_APPROACHING_CHOICE (3u)
#define SR439_OBJ_GENERAL_INFO_FR_OBJ_DYN_PROP_GOING_CHOICE (4u)
#define SR439_OBJ_GENERAL_INFO_FR_OBJ_DYN_PROP_TRAVERSE_CHOICE (5u)
#define SR439_OBJ_GENERAL_INFO_FR_OBJ_DYN_PROP_CROSS_CHOICE (6u)
#define SR439_OBJ_GENERAL_INFO_FR_OBJ_DYN_PROP_HIGH_TARGET_CHOICE (7u)
#define SR439_OBJ_GENERAL_INFO_FR_OBJ_DYN_PROP_LOW_TARGET_CHOICE (8u)
#define SR439_OBJ_GENERAL_INFO_FR_OBJ_DYN_PROP_RESERVED_9_CHOICE (9u)
#define SR439_OBJ_GENERAL_INFO_FR_OBJ_DYN_PROP_RESERVED_10_CHOICE (10u)
#define SR439_OBJ_GENERAL_INFO_FR_OBJ_DYN_PROP_RESERVED_11_CHOICE (11u)
#define SR439_OBJ_GENERAL_INFO_FR_OBJ_DYN_PROP_RESERVED_12_CHOICE (12u)
#define SR439_OBJ_GENERAL_INFO_FR_OBJ_DYN_PROP_RESERVED_13_CHOICE (13u)
#define SR439_OBJ_GENERAL_INFO_FR_OBJ_DYN_PROP_RESERVED_14_CHOICE (14u)
#define SR439_OBJ_GENERAL_INFO_FR_OBJ_DYN_PROP_RESERVED_15_CHOICE (15u)

#define SR439_OBJ_GENERAL_INFO_FL_OBJ_DYN_PROP_DEFAULT_CHOICE (0u)
#define SR439_OBJ_GENERAL_INFO_FL_OBJ_DYN_PROP_STATIC_CHOICE (1u)
#define SR439_OBJ_GENERAL_INFO_FL_OBJ_DYN_PROP_STOP_CHOICE (2u)
#define SR439_OBJ_GENERAL_INFO_FL_OBJ_DYN_PROP_APPROACHING_CHOICE (3u)
#define SR439_OBJ_GENERAL_INFO_FL_OBJ_DYN_PROP_GOING_CHOICE (4u)
#define SR439_OBJ_GENERAL_INFO_FL_OBJ_DYN_PROP_TRAVERSE_CHOICE (5u)
#define SR439_OBJ_GENERAL_INFO_FL_OBJ_DYN_PROP_CROSS_CHOICE (6u)
#define SR439_OBJ_GENERAL_INFO_FL_OBJ_DYN_PROP_HIGH_TARGET_CHOICE (7u)
#define SR439_OBJ_GENERAL_INFO_FL_OBJ_DYN_PROP_LOW_TARGET_CHOICE (8u)
#define SR439_OBJ_GENERAL_INFO_FL_OBJ_DYN_PROP_RESERVED_9_CHOICE (9u)
#define SR439_OBJ_GENERAL_INFO_FL_OBJ_DYN_PROP_RESERVED_10_CHOICE (10u)
#define SR439_OBJ_GENERAL_INFO_FL_OBJ_DYN_PROP_RESERVED_11_CHOICE (11u)
#define SR439_OBJ_GENERAL_INFO_FL_OBJ_DYN_PROP_RESERVED_12_CHOICE (12u)
#define SR439_OBJ_GENERAL_INFO_FL_OBJ_DYN_PROP_RESERVED_13_CHOICE (13u)
#define SR439_OBJ_GENERAL_INFO_FL_OBJ_DYN_PROP_RESERVED_14_CHOICE (14u)
#define SR439_OBJ_GENERAL_INFO_FL_OBJ_DYN_PROP_RESERVED_15_CHOICE (15u)

#define SR439_OBJ_COLLISION_INFO_RR_OBJ_REF_POINT_DEFAULT_CHOICE (0u)
#define SR439_OBJ_COLLISION_INFO_RR_OBJ_REF_POINT_FL_CHOICE (1u)
#define SR439_OBJ_COLLISION_INFO_RR_OBJ_REF_POINT_FRONT_CHOICE (2u)
#define SR439_OBJ_COLLISION_INFO_RR_OBJ_REF_POINT_FR_CHOICE (3u)
#define SR439_OBJ_COLLISION_INFO_RR_OBJ_REF_POINT_RIGHT_CHOICE (4u)
#define SR439_OBJ_COLLISION_INFO_RR_OBJ_REF_POINT_RR_CHOICE (5u)
#define SR439_OBJ_COLLISION_INFO_RR_OBJ_REF_POINT_REAR_CHOICE (6u)
#define SR439_OBJ_COLLISION_INFO_RR_OBJ_REF_POINT_RL_CHOICE (7u)
#define SR439_OBJ_COLLISION_INFO_RR_OBJ_REF_POINT_LEFT_CHOICE (8u)
#define SR439_OBJ_COLLISION_INFO_RR_OBJ_REF_POINT_CENTER_CHOICE (9u)

#define SR439_OBJ_COLLISION_INFO_FR_OBJ_REF_POINT_DEFAULT_CHOICE (0u)
#define SR439_OBJ_COLLISION_INFO_FR_OBJ_REF_POINT_FL_CHOICE (1u)
#define SR439_OBJ_COLLISION_INFO_FR_OBJ_REF_POINT_FRONT_CHOICE (2u)
#define SR439_OBJ_COLLISION_INFO_FR_OBJ_REF_POINT_FR_CHOICE (3u)
#define SR439_OBJ_COLLISION_INFO_FR_OBJ_REF_POINT_RIGHT_CHOICE (4u)
#define SR439_OBJ_COLLISION_INFO_FR_OBJ_REF_POINT_RR_CHOICE (5u)
#define SR439_OBJ_COLLISION_INFO_FR_OBJ_REF_POINT_REAR_CHOICE (6u)
#define SR439_OBJ_COLLISION_INFO_FR_OBJ_REF_POINT_RL_CHOICE (7u)
#define SR439_OBJ_COLLISION_INFO_FR_OBJ_REF_POINT_LEFT_CHOICE (8u)
#define SR439_OBJ_COLLISION_INFO_FR_OBJ_REF_POINT_CENTER_CHOICE (9u)

#define SR439_OBJ_COLLISION_INFO_FL_OBJ_REF_POINT_DEFAULT_CHOICE (0u)
#define SR439_OBJ_COLLISION_INFO_FL_OBJ_REF_POINT_FL_CHOICE (1u)
#define SR439_OBJ_COLLISION_INFO_FL_OBJ_REF_POINT_FRONT_CHOICE (2u)
#define SR439_OBJ_COLLISION_INFO_FL_OBJ_REF_POINT_FR_CHOICE (3u)
#define SR439_OBJ_COLLISION_INFO_FL_OBJ_REF_POINT_RIGHT_CHOICE (4u)
#define SR439_OBJ_COLLISION_INFO_FL_OBJ_REF_POINT_RR_CHOICE (5u)
#define SR439_OBJ_COLLISION_INFO_FL_OBJ_REF_POINT_REAR_CHOICE (6u)
#define SR439_OBJ_COLLISION_INFO_FL_OBJ_REF_POINT_RL_CHOICE (7u)
#define SR439_OBJ_COLLISION_INFO_FL_OBJ_REF_POINT_LEFT_CHOICE (8u)
#define SR439_OBJ_COLLISION_INFO_FL_OBJ_REF_POINT_CENTER_CHOICE (9u)

#define SR439_OBJ_0_STATUS_RR_OBJ_BSD_WARNING_NO__ALARM_CHOICE (0u)
#define SR439_OBJ_0_STATUS_RR_OBJ_BSD_WARNING_1__LEVEL__ALARM_CHOICE (1u)
#define SR439_OBJ_0_STATUS_RR_OBJ_BSD_WARNING_2__LEVEL__ALARM_CHOICE (2u)

#define SR439_OBJ_0_STATUS_RR_OBJ_LCA_WARNING_NO__ALARM_CHOICE (0u)
#define SR439_OBJ_0_STATUS_RR_OBJ_LCA_WARNING_1__LEVEL__ALARM_CHOICE (1u)
#define SR439_OBJ_0_STATUS_RR_OBJ_LCA_WARNING_2__LEVEL__ALARM_CHOICE (2u)

#define SR439_OBJ_0_STATUS_RR_OBJ_DOW_WARNING_NO__ALARM_CHOICE (0u)
#define SR439_OBJ_0_STATUS_RR_OBJ_DOW_WARNING_1__LEVEL__ALARM_CHOICE (1u)
#define SR439_OBJ_0_STATUS_RR_OBJ_DOW_WARNING_2__LEVEL__ALARM_CHOICE (2u)

#define SR439_OBJ_0_STATUS_RR_OBJ_RCTA_WARNING_NO__ALARM_CHOICE (0u)
#define SR439_OBJ_0_STATUS_RR_OBJ_RCTA_WARNING_1__LEVEL__ALARM_CHOICE (1u)
#define SR439_OBJ_0_STATUS_RR_OBJ_RCTA_WARNING_2__LEVEL__ALARM_CHOICE (2u)

#define SR439_OBJ_0_STATUS_RR_OBJ_RCTB_WARNING_NO__ALARM_CHOICE (0u)
#define SR439_OBJ_0_STATUS_RR_OBJ_RCTB_WARNING_1__LEVEL__ALARM_CHOICE (1u)
#define SR439_OBJ_0_STATUS_RR_OBJ_RCTB_WARNING_2__LEVEL__ALARM_CHOICE (2u)

#define SR439_OBJ_0_STATUS_RR_OBJ_FCTA_WARNING_NO__ALARM_CHOICE (0u)
#define SR439_OBJ_0_STATUS_RR_OBJ_FCTA_WARNING_1__LEVEL__ALARM_CHOICE (1u)
#define SR439_OBJ_0_STATUS_RR_OBJ_FCTA_WARNING_2__LEVEL__ALARM_CHOICE (2u)

#define SR439_OBJ_0_STATUS_RR_OBJ_FCTB_WARNING_NO__ALARM_CHOICE (0u)
#define SR439_OBJ_0_STATUS_RR_OBJ_FCTB_WARNING_1__LEVEL__ALARM_CHOICE (1u)
#define SR439_OBJ_0_STATUS_RR_OBJ_FCTB_WARNING_2__LEVEL__ALARM_CHOICE (2u)

#define SR439_OBJ_0_STATUS_FR_OBJ_BSD_WARNING_NO__ALARM_CHOICE (0u)
#define SR439_OBJ_0_STATUS_FR_OBJ_BSD_WARNING_1__LEVEL__ALARM_CHOICE (1u)
#define SR439_OBJ_0_STATUS_FR_OBJ_BSD_WARNING_2__LEVEL__ALARM_CHOICE (2u)

#define SR439_OBJ_0_STATUS_FR_OBJ_LCA_WARNING_NO__ALARM_CHOICE (0u)
#define SR439_OBJ_0_STATUS_FR_OBJ_LCA_WARNING_1__LEVEL__ALARM_CHOICE (1u)
#define SR439_OBJ_0_STATUS_FR_OBJ_LCA_WARNING_2__LEVEL__ALARM_CHOICE (2u)

#define SR439_OBJ_0_STATUS_FR_OBJ_DOW_WARNING_NO__ALARM_CHOICE (0u)
#define SR439_OBJ_0_STATUS_FR_OBJ_DOW_WARNING_1__LEVEL__ALARM_CHOICE (1u)
#define SR439_OBJ_0_STATUS_FR_OBJ_DOW_WARNING_2__LEVEL__ALARM_CHOICE (2u)

#define SR439_OBJ_0_STATUS_FR_OBJ_RCTA_WARNING_NO__ALARM_CHOICE (0u)
#define SR439_OBJ_0_STATUS_FR_OBJ_RCTA_WARNING_1__LEVEL__ALARM_CHOICE (1u)
#define SR439_OBJ_0_STATUS_FR_OBJ_RCTA_WARNING_2__LEVEL__ALARM_CHOICE (2u)

#define SR439_OBJ_0_STATUS_FR_OBJ_RCTB_WARNING_NO__ALARM_CHOICE (0u)
#define SR439_OBJ_0_STATUS_FR_OBJ_RCTB_WARNING_1__LEVEL__ALARM_CHOICE (1u)
#define SR439_OBJ_0_STATUS_FR_OBJ_RCTB_WARNING_2__LEVEL__ALARM_CHOICE (2u)

#define SR439_OBJ_0_STATUS_FR_OBJ_FCTA_WARNING_NO__ALARM_CHOICE (0u)
#define SR439_OBJ_0_STATUS_FR_OBJ_FCTA_WARNING_1__LEVEL__ALARM_CHOICE (1u)
#define SR439_OBJ_0_STATUS_FR_OBJ_FCTA_WARNING_2__LEVEL__ALARM_CHOICE (2u)

#define SR439_OBJ_0_STATUS_FR_OBJ_FCTB_WARNING_NO__ALARM_CHOICE (0u)
#define SR439_OBJ_0_STATUS_FR_OBJ_FCTB_WARNING_1__LEVEL__ALARM_CHOICE (1u)
#define SR439_OBJ_0_STATUS_FR_OBJ_FCTB_WARNING_2__LEVEL__ALARM_CHOICE (2u)

#define SR439_OBJ_0_STATUS_FL_OBJ_BSD_WARNING_NO__ALARM_CHOICE (0u)
#define SR439_OBJ_0_STATUS_FL_OBJ_BSD_WARNING_1__LEVEL__ALARM_CHOICE (1u)
#define SR439_OBJ_0_STATUS_FL_OBJ_BSD_WARNING_2__LEVEL__ALARM_CHOICE (2u)

#define SR439_OBJ_0_STATUS_FL_OBJ_LCA_WARNING_NO__ALARM_CHOICE (0u)
#define SR439_OBJ_0_STATUS_FL_OBJ_LCA_WARNING_1__LEVEL__ALARM_CHOICE (1u)
#define SR439_OBJ_0_STATUS_FL_OBJ_LCA_WARNING_2__LEVEL__ALARM_CHOICE (2u)

#define SR439_OBJ_0_STATUS_FL_OBJ_DOW_WARNING_NO__ALARM_CHOICE (0u)
#define SR439_OBJ_0_STATUS_FL_OBJ_DOW_WARNING_1__LEVEL__ALARM_CHOICE (1u)
#define SR439_OBJ_0_STATUS_FL_OBJ_DOW_WARNING_2__LEVEL__ALARM_CHOICE (2u)

#define SR439_OBJ_0_STATUS_FL_OBJ_RCTA_WARNING_NO__ALARM_CHOICE (0u)
#define SR439_OBJ_0_STATUS_FL_OBJ_RCTA_WARNING_1__LEVEL__ALARM_CHOICE (1u)
#define SR439_OBJ_0_STATUS_FL_OBJ_RCTA_WARNING_2__LEVEL__ALARM_CHOICE (2u)

#define SR439_OBJ_0_STATUS_FL_OBJ_RCTB_WARNING_NO__ALARM_CHOICE (0u)
#define SR439_OBJ_0_STATUS_FL_OBJ_RCTB_WARNING_1__LEVEL__ALARM_CHOICE (1u)
#define SR439_OBJ_0_STATUS_FL_OBJ_RCTB_WARNING_2__LEVEL__ALARM_CHOICE (2u)

#define SR439_OBJ_0_STATUS_FL_OBJ_FCTA_WARNING_NO__ALARM_CHOICE (0u)
#define SR439_OBJ_0_STATUS_FL_OBJ_FCTA_WARNING_1__LEVEL__ALARM_CHOICE (1u)
#define SR439_OBJ_0_STATUS_FL_OBJ_FCTA_WARNING_2__LEVEL__ALARM_CHOICE (2u)

#define SR439_OBJ_0_STATUS_FL_OBJ_FCTB_WARNING_NO__ALARM_CHOICE (0u)
#define SR439_OBJ_0_STATUS_FL_OBJ_FCTB_WARNING_1__LEVEL__ALARM_CHOICE (1u)
#define SR439_OBJ_0_STATUS_FL_OBJ_FCTB_WARNING_2__LEVEL__ALARM_CHOICE (2u)

#define SR439_CLUSTER_HEADER_RR_CLUSTER_RADAR_IDENTIFY_REAR__LEFT__CORNER__RADAR_CHOICE (0u)
#define SR439_CLUSTER_HEADER_RR_CLUSTER_RADAR_IDENTIFY_FRONT__LEFT__CORNER__RADAR_CHOICE (1u)
#define SR439_CLUSTER_HEADER_RR_CLUSTER_RADAR_IDENTIFY_FRONT__RIGHT__CORNER__RADAR_CHOICE (2u)
#define SR439_CLUSTER_HEADER_RR_CLUSTER_RADAR_IDENTIFY_REAR__RIGHT__CORNER__RADAR_CHOICE (3u)

#define SR439_CLUSTER_HEADER_FR_CLUSTER_RADAR_IDENTIFY_REAR__LEFT__CORNER__RADAR_CHOICE (0u)
#define SR439_CLUSTER_HEADER_FR_CLUSTER_RADAR_IDENTIFY_FRONT__LEFT__CORNER__RADAR_CHOICE (1u)
#define SR439_CLUSTER_HEADER_FR_CLUSTER_RADAR_IDENTIFY_FRONT__RIGHT__CORNER__RADAR_CHOICE (2u)
#define SR439_CLUSTER_HEADER_FR_CLUSTER_RADAR_IDENTIFY_REAR__RIGHT__CORNER__RADAR_CHOICE (3u)

#define SR439_CLUSTER_HEADER_FL_CLUSTER_RADAR_IDENTIFY_REAR__LEFT__CORNER__RADAR_CHOICE (0u)
#define SR439_CLUSTER_HEADER_FL_CLUSTER_RADAR_IDENTIFY_FRONT__LEFT__CORNER__RADAR_CHOICE (1u)
#define SR439_CLUSTER_HEADER_FL_CLUSTER_RADAR_IDENTIFY_FRONT__RIGHT__CORNER__RADAR_CHOICE (2u)
#define SR439_CLUSTER_HEADER_FL_CLUSTER_RADAR_IDENTIFY_REAR__RIGHT__CORNER__RADAR_CHOICE (3u)

#define SR439_CLUSTER_GENERAL_INFORMATION_RR_CLUSTER_DYN_PROP_1_STOP_CHOICE (0u)
#define SR439_CLUSTER_GENERAL_INFORMATION_RR_CLUSTER_DYN_PROP_1_MOVING_CHOICE (1u)
#define SR439_CLUSTER_GENERAL_INFORMATION_RR_CLUSTER_DYN_PROP_1_MOVING_FROM_STOP_CHOICE (2u)
#define SR439_CLUSTER_GENERAL_INFORMATION_RR_CLUSTER_DYN_PROP_1_STOP_FROM_MOVING_CHOICE (3u)

#define SR439_CLUSTER_GENERAL_INFORMATION_RR_CLUSTER_PROB_OF_EXIST_1_INVALID_CHOICE (0u)
#define SR439_CLUSTER_GENERAL_INFORMATION_RR_CLUSTER_PROB_OF_EXIST_1__25__CHOICE (1u)
#define SR439_CLUSTER_GENERAL_INFORMATION_RR_CLUSTER_PROB_OF_EXIST_1__50__CHOICE (2u)
#define SR439_CLUSTER_GENERAL_INFORMATION_RR_CLUSTER_PROB_OF_EXIST_1__75__CHOICE (3u)
#define SR439_CLUSTER_GENERAL_INFORMATION_RR_CLUSTER_PROB_OF_EXIST_1__90__CHOICE (4u)
#define SR439_CLUSTER_GENERAL_INFORMATION_RR_CLUSTER_PROB_OF_EXIST_1__99__CHOICE (5u)
#define SR439_CLUSTER_GENERAL_INFORMATION_RR_CLUSTER_PROB_OF_EXIST_1__99_9__CHOICE (6u)
#define SR439_CLUSTER_GENERAL_INFORMATION_RR_CLUSTER_PROB_OF_EXIST_1___100__CHOICE (7u)

#define SR439_CLUSTER_GENERAL_INFORMATION_RR_CLUSTER_DYN_PROP_2_STOP_CHOICE (0u)
#define SR439_CLUSTER_GENERAL_INFORMATION_RR_CLUSTER_DYN_PROP_2_MOVING_CHOICE (1u)
#define SR439_CLUSTER_GENERAL_INFORMATION_RR_CLUSTER_DYN_PROP_2_MOVING_FROM_STOP_CHOICE (2u)
#define SR439_CLUSTER_GENERAL_INFORMATION_RR_CLUSTER_DYN_PROP_2_STOP_FROM_MOVING_CHOICE (3u)

#define SR439_CLUSTER_GENERAL_INFORMATION_RR_CLUSTER_PROB_OF_EXIST_2_INVALID_CHOICE (0u)
#define SR439_CLUSTER_GENERAL_INFORMATION_RR_CLUSTER_PROB_OF_EXIST_2__25__CHOICE (1u)
#define SR439_CLUSTER_GENERAL_INFORMATION_RR_CLUSTER_PROB_OF_EXIST_2__50__CHOICE (2u)
#define SR439_CLUSTER_GENERAL_INFORMATION_RR_CLUSTER_PROB_OF_EXIST_2__75__CHOICE (3u)
#define SR439_CLUSTER_GENERAL_INFORMATION_RR_CLUSTER_PROB_OF_EXIST_2__90__CHOICE (4u)
#define SR439_CLUSTER_GENERAL_INFORMATION_RR_CLUSTER_PROB_OF_EXIST_2__99__CHOICE (5u)
#define SR439_CLUSTER_GENERAL_INFORMATION_RR_CLUSTER_PROB_OF_EXIST_2__99_9__CHOICE (6u)
#define SR439_CLUSTER_GENERAL_INFORMATION_RR_CLUSTER_PROB_OF_EXIST_2___100__CHOICE (7u)

#define SR439_CLUSTER_GENERAL_INFORMATION_RR_CLUSTER_DYN_PROP_3_STOP_CHOICE (0u)
#define SR439_CLUSTER_GENERAL_INFORMATION_RR_CLUSTER_DYN_PROP_3_MOVING_CHOICE (1u)
#define SR439_CLUSTER_GENERAL_INFORMATION_RR_CLUSTER_DYN_PROP_3_MOVING_FROM_STOP_CHOICE (2u)
#define SR439_CLUSTER_GENERAL_INFORMATION_RR_CLUSTER_DYN_PROP_3_STOP_FROM_MOVING_CHOICE (3u)

#define SR439_CLUSTER_GENERAL_INFORMATION_RR_CLUSTER_PROB_OF_EXIST_3_INVALID_CHOICE (0u)
#define SR439_CLUSTER_GENERAL_INFORMATION_RR_CLUSTER_PROB_OF_EXIST_3__25__CHOICE (1u)
#define SR439_CLUSTER_GENERAL_INFORMATION_RR_CLUSTER_PROB_OF_EXIST_3__50__CHOICE (2u)
#define SR439_CLUSTER_GENERAL_INFORMATION_RR_CLUSTER_PROB_OF_EXIST_3__75__CHOICE (3u)
#define SR439_CLUSTER_GENERAL_INFORMATION_RR_CLUSTER_PROB_OF_EXIST_3__90__CHOICE (4u)
#define SR439_CLUSTER_GENERAL_INFORMATION_RR_CLUSTER_PROB_OF_EXIST_3__99__CHOICE (5u)
#define SR439_CLUSTER_GENERAL_INFORMATION_RR_CLUSTER_PROB_OF_EXIST_3__99_9__CHOICE (6u)
#define SR439_CLUSTER_GENERAL_INFORMATION_RR_CLUSTER_PROB_OF_EXIST_3___100__CHOICE (7u)

#define SR439_CLUSTER_GENERAL_INFORMATION_RR_CLUSTER_DYN_PROP_4_STOP_CHOICE (0u)
#define SR439_CLUSTER_GENERAL_INFORMATION_RR_CLUSTER_DYN_PROP_4_MOVING_CHOICE (1u)
#define SR439_CLUSTER_GENERAL_INFORMATION_RR_CLUSTER_DYN_PROP_4_MOVING_FROM_STOP_CHOICE (2u)
#define SR439_CLUSTER_GENERAL_INFORMATION_RR_CLUSTER_DYN_PROP_4_STOP_FROM_MOVING_CHOICE (3u)

#define SR439_CLUSTER_GENERAL_INFORMATION_RR_CLUSTER_PROB_OF_EXIST_4_INVALID_CHOICE (0u)
#define SR439_CLUSTER_GENERAL_INFORMATION_RR_CLUSTER_PROB_OF_EXIST_4__25__CHOICE (1u)
#define SR439_CLUSTER_GENERAL_INFORMATION_RR_CLUSTER_PROB_OF_EXIST_4__50__CHOICE (2u)
#define SR439_CLUSTER_GENERAL_INFORMATION_RR_CLUSTER_PROB_OF_EXIST_4__75__CHOICE (3u)
#define SR439_CLUSTER_GENERAL_INFORMATION_RR_CLUSTER_PROB_OF_EXIST_4__90__CHOICE (4u)
#define SR439_CLUSTER_GENERAL_INFORMATION_RR_CLUSTER_PROB_OF_EXIST_4__99__CHOICE (5u)
#define SR439_CLUSTER_GENERAL_INFORMATION_RR_CLUSTER_PROB_OF_EXIST_4__99_9__CHOICE (6u)
#define SR439_CLUSTER_GENERAL_INFORMATION_RR_CLUSTER_PROB_OF_EXIST_4___100__CHOICE (7u)

#define SR439_CLUSTER_GENERAL_INFORMATION_RR_CLUSTER_DYN_PROP_5_STOP_CHOICE (0u)
#define SR439_CLUSTER_GENERAL_INFORMATION_RR_CLUSTER_DYN_PROP_5_MOVING_CHOICE (1u)
#define SR439_CLUSTER_GENERAL_INFORMATION_RR_CLUSTER_DYN_PROP_5_MOVING_FROM_STOP_CHOICE (2u)
#define SR439_CLUSTER_GENERAL_INFORMATION_RR_CLUSTER_DYN_PROP_5_STOP_FROM_MOVING_CHOICE (3u)

#define SR439_CLUSTER_GENERAL_INFORMATION_RR_CLUSTER_PROB_OF_EXIST_5_INVALID_CHOICE (0u)
#define SR439_CLUSTER_GENERAL_INFORMATION_RR_CLUSTER_PROB_OF_EXIST_5__25__CHOICE (1u)
#define SR439_CLUSTER_GENERAL_INFORMATION_RR_CLUSTER_PROB_OF_EXIST_5__50__CHOICE (2u)
#define SR439_CLUSTER_GENERAL_INFORMATION_RR_CLUSTER_PROB_OF_EXIST_5__75__CHOICE (3u)
#define SR439_CLUSTER_GENERAL_INFORMATION_RR_CLUSTER_PROB_OF_EXIST_5__90__CHOICE (4u)
#define SR439_CLUSTER_GENERAL_INFORMATION_RR_CLUSTER_PROB_OF_EXIST_5__99__CHOICE (5u)
#define SR439_CLUSTER_GENERAL_INFORMATION_RR_CLUSTER_PROB_OF_EXIST_5__99_9__CHOICE (6u)
#define SR439_CLUSTER_GENERAL_INFORMATION_RR_CLUSTER_PROB_OF_EXIST_5___100__CHOICE (7u)

#define SR439_CLUSTER_GENERAL_INFORMATION_FR_CLUSTER_DYN_PROP_1_STOP_CHOICE (0u)
#define SR439_CLUSTER_GENERAL_INFORMATION_FR_CLUSTER_DYN_PROP_1_MOVING_CHOICE (1u)
#define SR439_CLUSTER_GENERAL_INFORMATION_FR_CLUSTER_DYN_PROP_1_MOVING_FROM_STOP_CHOICE (2u)
#define SR439_CLUSTER_GENERAL_INFORMATION_FR_CLUSTER_DYN_PROP_1_STOP_FROM_MOVING_CHOICE (3u)

#define SR439_CLUSTER_GENERAL_INFORMATION_FR_CLUSTER_PROB_OF_EXIST_1_INVALID_CHOICE (0u)
#define SR439_CLUSTER_GENERAL_INFORMATION_FR_CLUSTER_PROB_OF_EXIST_1__25__CHOICE (1u)
#define SR439_CLUSTER_GENERAL_INFORMATION_FR_CLUSTER_PROB_OF_EXIST_1__50__CHOICE (2u)
#define SR439_CLUSTER_GENERAL_INFORMATION_FR_CLUSTER_PROB_OF_EXIST_1__75__CHOICE (3u)
#define SR439_CLUSTER_GENERAL_INFORMATION_FR_CLUSTER_PROB_OF_EXIST_1__90__CHOICE (4u)
#define SR439_CLUSTER_GENERAL_INFORMATION_FR_CLUSTER_PROB_OF_EXIST_1__99__CHOICE (5u)
#define SR439_CLUSTER_GENERAL_INFORMATION_FR_CLUSTER_PROB_OF_EXIST_1__99_9__CHOICE (6u)
#define SR439_CLUSTER_GENERAL_INFORMATION_FR_CLUSTER_PROB_OF_EXIST_1___100__CHOICE (7u)

#define SR439_CLUSTER_GENERAL_INFORMATION_FR_CLUSTER_DYN_PROP_2_STOP_CHOICE (0u)
#define SR439_CLUSTER_GENERAL_INFORMATION_FR_CLUSTER_DYN_PROP_2_MOVING_CHOICE (1u)
#define SR439_CLUSTER_GENERAL_INFORMATION_FR_CLUSTER_DYN_PROP_2_MOVING_FROM_STOP_CHOICE (2u)
#define SR439_CLUSTER_GENERAL_INFORMATION_FR_CLUSTER_DYN_PROP_2_STOP_FROM_MOVING_CHOICE (3u)

#define SR439_CLUSTER_GENERAL_INFORMATION_FR_CLUSTER_PROB_OF_EXIST_2_INVALID_CHOICE (0u)
#define SR439_CLUSTER_GENERAL_INFORMATION_FR_CLUSTER_PROB_OF_EXIST_2__25__CHOICE (1u)
#define SR439_CLUSTER_GENERAL_INFORMATION_FR_CLUSTER_PROB_OF_EXIST_2__50__CHOICE (2u)
#define SR439_CLUSTER_GENERAL_INFORMATION_FR_CLUSTER_PROB_OF_EXIST_2__75__CHOICE (3u)
#define SR439_CLUSTER_GENERAL_INFORMATION_FR_CLUSTER_PROB_OF_EXIST_2__90__CHOICE (4u)
#define SR439_CLUSTER_GENERAL_INFORMATION_FR_CLUSTER_PROB_OF_EXIST_2__99__CHOICE (5u)
#define SR439_CLUSTER_GENERAL_INFORMATION_FR_CLUSTER_PROB_OF_EXIST_2__99_9__CHOICE (6u)
#define SR439_CLUSTER_GENERAL_INFORMATION_FR_CLUSTER_PROB_OF_EXIST_2___100__CHOICE (7u)

#define SR439_CLUSTER_GENERAL_INFORMATION_FR_CLUSTER_DYN_PROP_3_STOP_CHOICE (0u)
#define SR439_CLUSTER_GENERAL_INFORMATION_FR_CLUSTER_DYN_PROP_3_MOVING_CHOICE (1u)
#define SR439_CLUSTER_GENERAL_INFORMATION_FR_CLUSTER_DYN_PROP_3_MOVING_FROM_STOP_CHOICE (2u)
#define SR439_CLUSTER_GENERAL_INFORMATION_FR_CLUSTER_DYN_PROP_3_STOP_FROM_MOVING_CHOICE (3u)

#define SR439_CLUSTER_GENERAL_INFORMATION_FR_CLUSTER_PROB_OF_EXIST_3_INVALID_CHOICE (0u)
#define SR439_CLUSTER_GENERAL_INFORMATION_FR_CLUSTER_PROB_OF_EXIST_3__25__CHOICE (1u)
#define SR439_CLUSTER_GENERAL_INFORMATION_FR_CLUSTER_PROB_OF_EXIST_3__50__CHOICE (2u)
#define SR439_CLUSTER_GENERAL_INFORMATION_FR_CLUSTER_PROB_OF_EXIST_3__75__CHOICE (3u)
#define SR439_CLUSTER_GENERAL_INFORMATION_FR_CLUSTER_PROB_OF_EXIST_3__90__CHOICE (4u)
#define SR439_CLUSTER_GENERAL_INFORMATION_FR_CLUSTER_PROB_OF_EXIST_3__99__CHOICE (5u)
#define SR439_CLUSTER_GENERAL_INFORMATION_FR_CLUSTER_PROB_OF_EXIST_3__99_9__CHOICE (6u)
#define SR439_CLUSTER_GENERAL_INFORMATION_FR_CLUSTER_PROB_OF_EXIST_3___100__CHOICE (7u)

#define SR439_CLUSTER_GENERAL_INFORMATION_FR_CLUSTER_DYN_PROP_4_STOP_CHOICE (0u)
#define SR439_CLUSTER_GENERAL_INFORMATION_FR_CLUSTER_DYN_PROP_4_MOVING_CHOICE (1u)
#define SR439_CLUSTER_GENERAL_INFORMATION_FR_CLUSTER_DYN_PROP_4_MOVING_FROM_STOP_CHOICE (2u)
#define SR439_CLUSTER_GENERAL_INFORMATION_FR_CLUSTER_DYN_PROP_4_STOP_FROM_MOVING_CHOICE (3u)

#define SR439_CLUSTER_GENERAL_INFORMATION_FR_CLUSTER_PROB_OF_EXIST_4_INVALID_CHOICE (0u)
#define SR439_CLUSTER_GENERAL_INFORMATION_FR_CLUSTER_PROB_OF_EXIST_4__25__CHOICE (1u)
#define SR439_CLUSTER_GENERAL_INFORMATION_FR_CLUSTER_PROB_OF_EXIST_4__50__CHOICE (2u)
#define SR439_CLUSTER_GENERAL_INFORMATION_FR_CLUSTER_PROB_OF_EXIST_4__75__CHOICE (3u)
#define SR439_CLUSTER_GENERAL_INFORMATION_FR_CLUSTER_PROB_OF_EXIST_4__90__CHOICE (4u)
#define SR439_CLUSTER_GENERAL_INFORMATION_FR_CLUSTER_PROB_OF_EXIST_4__99__CHOICE (5u)
#define SR439_CLUSTER_GENERAL_INFORMATION_FR_CLUSTER_PROB_OF_EXIST_4__99_9__CHOICE (6u)
#define SR439_CLUSTER_GENERAL_INFORMATION_FR_CLUSTER_PROB_OF_EXIST_4___100__CHOICE (7u)

#define SR439_CLUSTER_GENERAL_INFORMATION_FR_CLUSTER_DYN_PROP_5_STOP_CHOICE (0u)
#define SR439_CLUSTER_GENERAL_INFORMATION_FR_CLUSTER_DYN_PROP_5_MOVING_CHOICE (1u)
#define SR439_CLUSTER_GENERAL_INFORMATION_FR_CLUSTER_DYN_PROP_5_MOVING_FROM_STOP_CHOICE (2u)
#define SR439_CLUSTER_GENERAL_INFORMATION_FR_CLUSTER_DYN_PROP_5_STOP_FROM_MOVING_CHOICE (3u)

#define SR439_CLUSTER_GENERAL_INFORMATION_FR_CLUSTER_PROB_OF_EXIST_5_INVALID_CHOICE (0u)
#define SR439_CLUSTER_GENERAL_INFORMATION_FR_CLUSTER_PROB_OF_EXIST_5__25__CHOICE (1u)
#define SR439_CLUSTER_GENERAL_INFORMATION_FR_CLUSTER_PROB_OF_EXIST_5__50__CHOICE (2u)
#define SR439_CLUSTER_GENERAL_INFORMATION_FR_CLUSTER_PROB_OF_EXIST_5__75__CHOICE (3u)
#define SR439_CLUSTER_GENERAL_INFORMATION_FR_CLUSTER_PROB_OF_EXIST_5__90__CHOICE (4u)
#define SR439_CLUSTER_GENERAL_INFORMATION_FR_CLUSTER_PROB_OF_EXIST_5__99__CHOICE (5u)
#define SR439_CLUSTER_GENERAL_INFORMATION_FR_CLUSTER_PROB_OF_EXIST_5__99_9__CHOICE (6u)
#define SR439_CLUSTER_GENERAL_INFORMATION_FR_CLUSTER_PROB_OF_EXIST_5___100__CHOICE (7u)

#define SR439_CLUSTER_GENERAL_INFORMATION_FL_CLUSTER_DYN_PROP_1_STOP_CHOICE (0u)
#define SR439_CLUSTER_GENERAL_INFORMATION_FL_CLUSTER_DYN_PROP_1_MOVING_CHOICE (1u)
#define SR439_CLUSTER_GENERAL_INFORMATION_FL_CLUSTER_DYN_PROP_1_MOVING_FROM_STOP_CHOICE (2u)
#define SR439_CLUSTER_GENERAL_INFORMATION_FL_CLUSTER_DYN_PROP_1_STOP_FROM_MOVING_CHOICE (3u)

#define SR439_CLUSTER_GENERAL_INFORMATION_FL_CLUSTER_PROB_OF_EXIST_1_INVALID_CHOICE (0u)
#define SR439_CLUSTER_GENERAL_INFORMATION_FL_CLUSTER_PROB_OF_EXIST_1__25__CHOICE (1u)
#define SR439_CLUSTER_GENERAL_INFORMATION_FL_CLUSTER_PROB_OF_EXIST_1__50__CHOICE (2u)
#define SR439_CLUSTER_GENERAL_INFORMATION_FL_CLUSTER_PROB_OF_EXIST_1__75__CHOICE (3u)
#define SR439_CLUSTER_GENERAL_INFORMATION_FL_CLUSTER_PROB_OF_EXIST_1__90__CHOICE (4u)
#define SR439_CLUSTER_GENERAL_INFORMATION_FL_CLUSTER_PROB_OF_EXIST_1__99__CHOICE (5u)
#define SR439_CLUSTER_GENERAL_INFORMATION_FL_CLUSTER_PROB_OF_EXIST_1__99_9__CHOICE (6u)
#define SR439_CLUSTER_GENERAL_INFORMATION_FL_CLUSTER_PROB_OF_EXIST_1___100__CHOICE (7u)

#define SR439_CLUSTER_GENERAL_INFORMATION_FL_CLUSTER_DYN_PROP_2_STOP_CHOICE (0u)
#define SR439_CLUSTER_GENERAL_INFORMATION_FL_CLUSTER_DYN_PROP_2_MOVING_CHOICE (1u)
#define SR439_CLUSTER_GENERAL_INFORMATION_FL_CLUSTER_DYN_PROP_2_MOVING_FROM_STOP_CHOICE (2u)
#define SR439_CLUSTER_GENERAL_INFORMATION_FL_CLUSTER_DYN_PROP_2_STOP_FROM_MOVING_CHOICE (3u)

#define SR439_CLUSTER_GENERAL_INFORMATION_FL_CLUSTER_PROB_OF_EXIST_2_INVALID_CHOICE (0u)
#define SR439_CLUSTER_GENERAL_INFORMATION_FL_CLUSTER_PROB_OF_EXIST_2__25__CHOICE (1u)
#define SR439_CLUSTER_GENERAL_INFORMATION_FL_CLUSTER_PROB_OF_EXIST_2__50__CHOICE (2u)
#define SR439_CLUSTER_GENERAL_INFORMATION_FL_CLUSTER_PROB_OF_EXIST_2__75__CHOICE (3u)
#define SR439_CLUSTER_GENERAL_INFORMATION_FL_CLUSTER_PROB_OF_EXIST_2__90__CHOICE (4u)
#define SR439_CLUSTER_GENERAL_INFORMATION_FL_CLUSTER_PROB_OF_EXIST_2__99__CHOICE (5u)
#define SR439_CLUSTER_GENERAL_INFORMATION_FL_CLUSTER_PROB_OF_EXIST_2__99_9__CHOICE (6u)
#define SR439_CLUSTER_GENERAL_INFORMATION_FL_CLUSTER_PROB_OF_EXIST_2___100__CHOICE (7u)

#define SR439_CLUSTER_GENERAL_INFORMATION_FL_CLUSTER_DYN_PROP_3_STOP_CHOICE (0u)
#define SR439_CLUSTER_GENERAL_INFORMATION_FL_CLUSTER_DYN_PROP_3_MOVING_CHOICE (1u)
#define SR439_CLUSTER_GENERAL_INFORMATION_FL_CLUSTER_DYN_PROP_3_MOVING_FROM_STOP_CHOICE (2u)
#define SR439_CLUSTER_GENERAL_INFORMATION_FL_CLUSTER_DYN_PROP_3_STOP_FROM_MOVING_CHOICE (3u)

#define SR439_CLUSTER_GENERAL_INFORMATION_FL_CLUSTER_PROB_OF_EXIST_3_INVALID_CHOICE (0u)
#define SR439_CLUSTER_GENERAL_INFORMATION_FL_CLUSTER_PROB_OF_EXIST_3__25__CHOICE (1u)
#define SR439_CLUSTER_GENERAL_INFORMATION_FL_CLUSTER_PROB_OF_EXIST_3__50__CHOICE (2u)
#define SR439_CLUSTER_GENERAL_INFORMATION_FL_CLUSTER_PROB_OF_EXIST_3__75__CHOICE (3u)
#define SR439_CLUSTER_GENERAL_INFORMATION_FL_CLUSTER_PROB_OF_EXIST_3__90__CHOICE (4u)
#define SR439_CLUSTER_GENERAL_INFORMATION_FL_CLUSTER_PROB_OF_EXIST_3__99__CHOICE (5u)
#define SR439_CLUSTER_GENERAL_INFORMATION_FL_CLUSTER_PROB_OF_EXIST_3__99_9__CHOICE (6u)
#define SR439_CLUSTER_GENERAL_INFORMATION_FL_CLUSTER_PROB_OF_EXIST_3___100__CHOICE (7u)

#define SR439_CLUSTER_GENERAL_INFORMATION_FL_CLUSTER_DYN_PROP_4_STOP_CHOICE (0u)
#define SR439_CLUSTER_GENERAL_INFORMATION_FL_CLUSTER_DYN_PROP_4_MOVING_CHOICE (1u)
#define SR439_CLUSTER_GENERAL_INFORMATION_FL_CLUSTER_DYN_PROP_4_MOVING_FROM_STOP_CHOICE (2u)
#define SR439_CLUSTER_GENERAL_INFORMATION_FL_CLUSTER_DYN_PROP_4_STOP_FROM_MOVING_CHOICE (3u)

#define SR439_CLUSTER_GENERAL_INFORMATION_FL_CLUSTER_PROB_OF_EXIST_4_INVALID_CHOICE (0u)
#define SR439_CLUSTER_GENERAL_INFORMATION_FL_CLUSTER_PROB_OF_EXIST_4__25__CHOICE (1u)
#define SR439_CLUSTER_GENERAL_INFORMATION_FL_CLUSTER_PROB_OF_EXIST_4__50__CHOICE (2u)
#define SR439_CLUSTER_GENERAL_INFORMATION_FL_CLUSTER_PROB_OF_EXIST_4__75__CHOICE (3u)
#define SR439_CLUSTER_GENERAL_INFORMATION_FL_CLUSTER_PROB_OF_EXIST_4__90__CHOICE (4u)
#define SR439_CLUSTER_GENERAL_INFORMATION_FL_CLUSTER_PROB_OF_EXIST_4__99__CHOICE (5u)
#define SR439_CLUSTER_GENERAL_INFORMATION_FL_CLUSTER_PROB_OF_EXIST_4__99_9__CHOICE (6u)
#define SR439_CLUSTER_GENERAL_INFORMATION_FL_CLUSTER_PROB_OF_EXIST_4___100__CHOICE (7u)

#define SR439_CLUSTER_GENERAL_INFORMATION_FL_CLUSTER_DYN_PROP_5_STOP_CHOICE (0u)
#define SR439_CLUSTER_GENERAL_INFORMATION_FL_CLUSTER_DYN_PROP_5_MOVING_CHOICE (1u)
#define SR439_CLUSTER_GENERAL_INFORMATION_FL_CLUSTER_DYN_PROP_5_MOVING_FROM_STOP_CHOICE (2u)
#define SR439_CLUSTER_GENERAL_INFORMATION_FL_CLUSTER_DYN_PROP_5_STOP_FROM_MOVING_CHOICE (3u)

#define SR439_CLUSTER_GENERAL_INFORMATION_FL_CLUSTER_PROB_OF_EXIST_5_INVALID_CHOICE (0u)
#define SR439_CLUSTER_GENERAL_INFORMATION_FL_CLUSTER_PROB_OF_EXIST_5__25__CHOICE (1u)
#define SR439_CLUSTER_GENERAL_INFORMATION_FL_CLUSTER_PROB_OF_EXIST_5__50__CHOICE (2u)
#define SR439_CLUSTER_GENERAL_INFORMATION_FL_CLUSTER_PROB_OF_EXIST_5__75__CHOICE (3u)
#define SR439_CLUSTER_GENERAL_INFORMATION_FL_CLUSTER_PROB_OF_EXIST_5__90__CHOICE (4u)
#define SR439_CLUSTER_GENERAL_INFORMATION_FL_CLUSTER_PROB_OF_EXIST_5__99__CHOICE (5u)
#define SR439_CLUSTER_GENERAL_INFORMATION_FL_CLUSTER_PROB_OF_EXIST_5__99_9__CHOICE (6u)
#define SR439_CLUSTER_GENERAL_INFORMATION_FL_CLUSTER_PROB_OF_EXIST_5___100__CHOICE (7u)

#define SR439_OBJ_COLLISION_INFO_RL_OBJ_REF_POINT_DEFAULT_CHOICE (0u)
#define SR439_OBJ_COLLISION_INFO_RL_OBJ_REF_POINT_FL_CHOICE (1u)
#define SR439_OBJ_COLLISION_INFO_RL_OBJ_REF_POINT_FRONT_CHOICE (2u)
#define SR439_OBJ_COLLISION_INFO_RL_OBJ_REF_POINT_FR_CHOICE (3u)
#define SR439_OBJ_COLLISION_INFO_RL_OBJ_REF_POINT_RIGHT_CHOICE (4u)
#define SR439_OBJ_COLLISION_INFO_RL_OBJ_REF_POINT_RR_CHOICE (5u)
#define SR439_OBJ_COLLISION_INFO_RL_OBJ_REF_POINT_REAR_CHOICE (6u)
#define SR439_OBJ_COLLISION_INFO_RL_OBJ_REF_POINT_RL_CHOICE (7u)
#define SR439_OBJ_COLLISION_INFO_RL_OBJ_REF_POINT_LEFT_CHOICE (8u)
#define SR439_OBJ_COLLISION_INFO_RL_OBJ_REF_POINT_CENTER_CHOICE (9u)

#define SR439_OBJ_QUALITY_INFO_RL_OBJ_CIPV_NO_ACTIVE_CHOICE (0u)
#define SR439_OBJ_QUALITY_INFO_RL_OBJ_CIPV_ACTIVE_CHOICE (1u)

#define SR439_OBJ_QUALITY_INFO_RL_OBJ_PROB_OF_CLASS_INVALID_CHOICE (0u)
#define SR439_OBJ_QUALITY_INFO_RL_OBJ_PROB_OF_CLASS__25__CHOICE (1u)
#define SR439_OBJ_QUALITY_INFO_RL_OBJ_PROB_OF_CLASS__50__CHOICE (2u)
#define SR439_OBJ_QUALITY_INFO_RL_OBJ_PROB_OF_CLASS__75__CHOICE (3u)
#define SR439_OBJ_QUALITY_INFO_RL_OBJ_PROB_OF_CLASS__90__CHOICE (4u)
#define SR439_OBJ_QUALITY_INFO_RL_OBJ_PROB_OF_CLASS__99__CHOICE (5u)
#define SR439_OBJ_QUALITY_INFO_RL_OBJ_PROB_OF_CLASS__99_9__CHOICE (6u)
#define SR439_OBJ_QUALITY_INFO_RL_OBJ_PROB_OF_CLASS___100__CHOICE (7u)

#define SR439_OBJ_QUALITY_INFO_RL_OBJ_PROB_OF_EXIST_INVALID_CHOICE (0u)
#define SR439_OBJ_QUALITY_INFO_RL_OBJ_PROB_OF_EXIST__25__CHOICE (1u)
#define SR439_OBJ_QUALITY_INFO_RL_OBJ_PROB_OF_EXIST__50__CHOICE (2u)
#define SR439_OBJ_QUALITY_INFO_RL_OBJ_PROB_OF_EXIST__75__CHOICE (3u)
#define SR439_OBJ_QUALITY_INFO_RL_OBJ_PROB_OF_EXIST__90__CHOICE (4u)
#define SR439_OBJ_QUALITY_INFO_RL_OBJ_PROB_OF_EXIST__99__CHOICE (5u)
#define SR439_OBJ_QUALITY_INFO_RL_OBJ_PROB_OF_EXIST__99_9__CHOICE (6u)
#define SR439_OBJ_QUALITY_INFO_RL_OBJ_PROB_OF_EXIST___100__CHOICE (7u)

#define SR439_OBJ_QUALITY_INFO_RL_OBJ_MEAS_STATE_NOT__CONFIRMED_CHOICE (0u)
#define SR439_OBJ_QUALITY_INFO_RL_OBJ_MEAS_STATE_NEW_CHOICE (1u)
#define SR439_OBJ_QUALITY_INFO_RL_OBJ_MEAS_STATE_MEASURED_CHOICE (2u)
#define SR439_OBJ_QUALITY_INFO_RL_OBJ_MEAS_STATE_PREDICITED_CHOICE (3u)
#define SR439_OBJ_QUALITY_INFO_RL_OBJ_MEAS_STATE_RESERVED_4_CHOICE (4u)
#define SR439_OBJ_QUALITY_INFO_RL_OBJ_MEAS_STATE_RESERVED_5_CHOICE (5u)
#define SR439_OBJ_QUALITY_INFO_RL_OBJ_MEAS_STATE_RESERVED_6_CHOICE (6u)
#define SR439_OBJ_QUALITY_INFO_RL_OBJ_MEAS_STATE_RESERVED_7_CHOICE (7u)

#define SR439_RADAR_REAR_ADAS_ADAS_BSD_L_FLG_NO_ACTIVE_CHOICE (0u)
#define SR439_RADAR_REAR_ADAS_ADAS_BSD_L_FLG_ACTIVE_CHOICE (1u)

#define SR439_RADAR_REAR_ADAS_ADAS_BSD_R_FLG_NO_ACTIVE_CHOICE (0u)
#define SR439_RADAR_REAR_ADAS_ADAS_BSD_R_FLG_ACTIVE_CHOICE (1u)

#define SR439_RADAR_REAR_ADAS_ADAS_DOW_L_FLG_NO_ACTIVE_CHOICE (0u)
#define SR439_RADAR_REAR_ADAS_ADAS_DOW_L_FLG_ACTIVE_CHOICE (1u)

#define SR439_RADAR_REAR_ADAS_ADAS_DOW_R_FLG_NO_ACTIVE_CHOICE (0u)
#define SR439_RADAR_REAR_ADAS_ADAS_DOW_R_FLG_ACTIVE_CHOICE (1u)

#define SR439_RADAR_REAR_ADAS_ADAS_LCA_L_FLG_NO_ACTIVE_CHOICE (0u)
#define SR439_RADAR_REAR_ADAS_ADAS_LCA_L_FLG_ACTIVE_CHOICE (1u)

#define SR439_RADAR_REAR_ADAS_ADAS_LCA_R_FLG_NO_ACTIVE_CHOICE (0u)
#define SR439_RADAR_REAR_ADAS_ADAS_LCA_R_FLG_ACTIVE_CHOICE (1u)

#define SR439_RADAR_REAR_ADAS_ADAS_RCTA_L_FLG_NO_ACTIVE_CHOICE (0u)
#define SR439_RADAR_REAR_ADAS_ADAS_RCTA_L_FLG_ACTIVE_CHOICE (1u)

#define SR439_RADAR_REAR_ADAS_ADAS_RCTA_R_FLG_NO_ACTIVE_CHOICE (0u)
#define SR439_RADAR_REAR_ADAS_ADAS_RCTA_R_FLG_ACTIVE_CHOICE (1u)

#define SR439_RADAR_REAR_ADAS_ADAS_RCTB_L_FLG_NO_ACTIVE_CHOICE (0u)
#define SR439_RADAR_REAR_ADAS_ADAS_RCTB_L_FLG_ACTIVE_CHOICE (1u)

#define SR439_RADAR_REAR_ADAS_ADAS_RCTB_R_FLG_NO_ACTIVE_CHOICE (0u)
#define SR439_RADAR_REAR_ADAS_ADAS_RCTB_R_FLG_ACTIVE_CHOICE (1u)

#define SR439_RADAR_REAR_ADAS_ADAS_FCTA_L_FLG_NO_ACTIVE_CHOICE (0u)
#define SR439_RADAR_REAR_ADAS_ADAS_FCTA_L_FLG_ACTIVE_CHOICE (1u)

#define SR439_RADAR_REAR_ADAS_ADAS_FCTA_R_FLG_NO_ACTIVE_CHOICE (0u)
#define SR439_RADAR_REAR_ADAS_ADAS_FCTA_R_FLG_ACTIVE_CHOICE (1u)

#define SR439_RADAR_REAR_ADAS_ADAS_FCTB_L_FLG_NO_ACTIVE_CHOICE (0u)
#define SR439_RADAR_REAR_ADAS_ADAS_FCTB_L_FLG_ACTIVE_CHOICE (1u)

#define SR439_RADAR_REAR_ADAS_ADAS_FCTB_R_FLG_NO_ACTIVE_CHOICE (0u)
#define SR439_RADAR_REAR_ADAS_ADAS_FCTB_R_FLG_ACTIVE_CHOICE (1u)

#define SR439_RADAR_REAR_ADAS_ADAS_FCW_FLG_NO_ACTIVE_CHOICE (0u)
#define SR439_RADAR_REAR_ADAS_ADAS_FCW_FLG_ACTIVE_CHOICE (1u)

#define SR439_RADAR_REAR_ADAS_ADAS_RCW_FLG_NO_ACTIVE_CHOICE (0u)
#define SR439_RADAR_REAR_ADAS_ADAS_RCW_FLG_ACTIVE_CHOICE (1u)

#define SR439_RADAR_REAR_ADAS_ADAS_BSD_L_W_NO__ALARM_CHOICE (0u)
#define SR439_RADAR_REAR_ADAS_ADAS_BSD_L_W_1__LEVEL__ALARM_CHOICE (1u)
#define SR439_RADAR_REAR_ADAS_ADAS_BSD_L_W_2__LEVEL__ALARM_CHOICE (2u)

#define SR439_RADAR_REAR_ADAS_ADAS_BSD_R_W_NO__ALARM_CHOICE (0u)
#define SR439_RADAR_REAR_ADAS_ADAS_BSD_R_W_1__LEVEL__ALARM_CHOICE (1u)
#define SR439_RADAR_REAR_ADAS_ADAS_BSD_R_W_2__LEVEL__ALARM_CHOICE (2u)

#define SR439_RADAR_REAR_ADAS_ADAS_LCA_L_W_NO__ALARM_CHOICE (0u)
#define SR439_RADAR_REAR_ADAS_ADAS_LCA_L_W_1__LEVEL__ALARM_CHOICE (1u)
#define SR439_RADAR_REAR_ADAS_ADAS_LCA_L_W_2__LEVEL__ALARM_CHOICE (2u)

#define SR439_RADAR_REAR_ADAS_ADAS_LCA_R_W_NO__ALARM_CHOICE (0u)
#define SR439_RADAR_REAR_ADAS_ADAS_LCA_R_W_1__LEVEL__ALARM_CHOICE (1u)
#define SR439_RADAR_REAR_ADAS_ADAS_LCA_R_W_2__LEVEL__ALARM_CHOICE (2u)

#define SR439_RADAR_REAR_ADAS_ADAS_DOW_L_W_NO__ALARM_CHOICE (0u)
#define SR439_RADAR_REAR_ADAS_ADAS_DOW_L_W_1__LEVEL__ALARM_CHOICE (1u)
#define SR439_RADAR_REAR_ADAS_ADAS_DOW_L_W_2__LEVEL__ALARM_CHOICE (2u)

#define SR439_RADAR_REAR_ADAS_ADAS_DOW_R_W_NO__ALARM_CHOICE (0u)
#define SR439_RADAR_REAR_ADAS_ADAS_DOW_R_W_1__LEVEL__ALARM_CHOICE (1u)
#define SR439_RADAR_REAR_ADAS_ADAS_DOW_R_W_2__LEVEL__ALARM_CHOICE (2u)

#define SR439_RADAR_REAR_ADAS_ADAS_RCTA_L_W_NO__ALARM_CHOICE (0u)
#define SR439_RADAR_REAR_ADAS_ADAS_RCTA_L_W_1__LEVEL__ALARM_CHOICE (1u)
#define SR439_RADAR_REAR_ADAS_ADAS_RCTA_L_W_2__LEVEL__ALARM_CHOICE (2u)

#define SR439_RADAR_REAR_ADAS_ADAS_RCTA_R_W_NO__ALARM_CHOICE (0u)
#define SR439_RADAR_REAR_ADAS_ADAS_RCTA_R_W_1__LEVEL__ALARM_CHOICE (1u)
#define SR439_RADAR_REAR_ADAS_ADAS_RCTA_R_W_2__LEVEL__ALARM_CHOICE (2u)

#define SR439_RADAR_REAR_ADAS_ADAS_RCTB_L_W_NO__ALARM_CHOICE (0u)
#define SR439_RADAR_REAR_ADAS_ADAS_RCTB_L_W_1__LEVEL__ALARM_CHOICE (1u)
#define SR439_RADAR_REAR_ADAS_ADAS_RCTB_L_W_2__LEVEL__ALARM_CHOICE (2u)

#define SR439_RADAR_REAR_ADAS_ADAS_RCTB_R_W_NO__ALARM_CHOICE (0u)
#define SR439_RADAR_REAR_ADAS_ADAS_RCTB_R_W_1__LEVEL__ALARM_CHOICE (1u)
#define SR439_RADAR_REAR_ADAS_ADAS_RCTB_R_W_2__LEVEL__ALARM_CHOICE (2u)

#define SR439_RADAR_REAR_ADAS_ADAS_FCTA_L_W_NO__ALARM_CHOICE (0u)
#define SR439_RADAR_REAR_ADAS_ADAS_FCTA_L_W_1__LEVEL__ALARM_CHOICE (1u)
#define SR439_RADAR_REAR_ADAS_ADAS_FCTA_L_W_2__LEVEL__ALARM_CHOICE (2u)

#define SR439_RADAR_REAR_ADAS_ADAS_FCTA_R_W_NO__ALARM_CHOICE (0u)
#define SR439_RADAR_REAR_ADAS_ADAS_FCTA_R_W_1__LEVEL__ALARM_CHOICE (1u)
#define SR439_RADAR_REAR_ADAS_ADAS_FCTA_R_W_2__LEVEL__ALARM_CHOICE (2u)

#define SR439_RADAR_REAR_ADAS_ADAS_FCTB_L_W_NO__ALARM_CHOICE (0u)
#define SR439_RADAR_REAR_ADAS_ADAS_FCTB_L_W_1__LEVEL__ALARM_CHOICE (1u)
#define SR439_RADAR_REAR_ADAS_ADAS_FCTB_L_W_2__LEVEL__ALARM_CHOICE (2u)

#define SR439_RADAR_REAR_ADAS_ADAS_FCTB_R_W_NO__ALARM_CHOICE (0u)
#define SR439_RADAR_REAR_ADAS_ADAS_FCTB_R_W_1__LEVEL__ALARM_CHOICE (1u)
#define SR439_RADAR_REAR_ADAS_ADAS_FCTB_R_W_2__LEVEL__ALARM_CHOICE (2u)

#define SR439_RADAR_REAR_ADAS_ADAS_FCW_W_NO__ALARM_CHOICE (0u)
#define SR439_RADAR_REAR_ADAS_ADAS_FCW_W_1__LEVEL__ALARM_CHOICE (1u)
#define SR439_RADAR_REAR_ADAS_ADAS_FCW_W_2__LEVEL__ALARM_CHOICE (2u)

#define SR439_RADAR_REAR_ADAS_ADAS_RCW_W_NO__ALARM_CHOICE (0u)
#define SR439_RADAR_REAR_ADAS_ADAS_RCW_W_1__LEVEL__ALARM_CHOICE (1u)
#define SR439_RADAR_REAR_ADAS_ADAS_RCW_W_2__LEVEL__ALARM_CHOICE (2u)

#define SR439_OBJ_GENERAL_INFO_RL_OBJ_DYN_PROP_DEFAULT_CHOICE (0u)
#define SR439_OBJ_GENERAL_INFO_RL_OBJ_DYN_PROP_STATIC_CHOICE (1u)
#define SR439_OBJ_GENERAL_INFO_RL_OBJ_DYN_PROP_STOP_CHOICE (2u)
#define SR439_OBJ_GENERAL_INFO_RL_OBJ_DYN_PROP_APPROACHING_CHOICE (3u)
#define SR439_OBJ_GENERAL_INFO_RL_OBJ_DYN_PROP_GOING_CHOICE (4u)
#define SR439_OBJ_GENERAL_INFO_RL_OBJ_DYN_PROP_TRAVERSE_CHOICE (5u)
#define SR439_OBJ_GENERAL_INFO_RL_OBJ_DYN_PROP_CROSS_CHOICE (6u)
#define SR439_OBJ_GENERAL_INFO_RL_OBJ_DYN_PROP_HIGH_TARGET_CHOICE (7u)
#define SR439_OBJ_GENERAL_INFO_RL_OBJ_DYN_PROP_LOW_TARGET_CHOICE (8u)
#define SR439_OBJ_GENERAL_INFO_RL_OBJ_DYN_PROP_RESERVED_9_CHOICE (9u)
#define SR439_OBJ_GENERAL_INFO_RL_OBJ_DYN_PROP_RESERVED_10_CHOICE (10u)
#define SR439_OBJ_GENERAL_INFO_RL_OBJ_DYN_PROP_RESERVED_11_CHOICE (11u)
#define SR439_OBJ_GENERAL_INFO_RL_OBJ_DYN_PROP_RESERVED_12_CHOICE (12u)
#define SR439_OBJ_GENERAL_INFO_RL_OBJ_DYN_PROP_RESERVED_13_CHOICE (13u)
#define SR439_OBJ_GENERAL_INFO_RL_OBJ_DYN_PROP_RESERVED_14_CHOICE (14u)
#define SR439_OBJ_GENERAL_INFO_RL_OBJ_DYN_PROP_RESERVED_15_CHOICE (15u)

#define SR439_OBJ_0_STATUS_RL_OBJ_BSD_WARNING_NO__ALARM_CHOICE (0u)
#define SR439_OBJ_0_STATUS_RL_OBJ_BSD_WARNING_1__LEVEL__ALARM_CHOICE (1u)
#define SR439_OBJ_0_STATUS_RL_OBJ_BSD_WARNING_2__LEVEL__ALARM_CHOICE (2u)

#define SR439_OBJ_0_STATUS_RL_OBJ_LCA_WARNING_NO__ALARM_CHOICE (0u)
#define SR439_OBJ_0_STATUS_RL_OBJ_LCA_WARNING_1__LEVEL__ALARM_CHOICE (1u)
#define SR439_OBJ_0_STATUS_RL_OBJ_LCA_WARNING_2__LEVEL__ALARM_CHOICE (2u)

#define SR439_OBJ_0_STATUS_RL_OBJ_DOW_WARNING_NO__ALARM_CHOICE (0u)
#define SR439_OBJ_0_STATUS_RL_OBJ_DOW_WARNING_1__LEVEL__ALARM_CHOICE (1u)
#define SR439_OBJ_0_STATUS_RL_OBJ_DOW_WARNING_2__LEVEL__ALARM_CHOICE (2u)

#define SR439_OBJ_0_STATUS_RL_OBJ_RCTA_WARNING_NO__ALARM_CHOICE (0u)
#define SR439_OBJ_0_STATUS_RL_OBJ_RCTA_WARNING_1__LEVEL__ALARM_CHOICE (1u)
#define SR439_OBJ_0_STATUS_RL_OBJ_RCTA_WARNING_2__LEVEL__ALARM_CHOICE (2u)

#define SR439_OBJ_0_STATUS_RL_OBJ_RCTB_WARNING_NO__ALARM_CHOICE (0u)
#define SR439_OBJ_0_STATUS_RL_OBJ_RCTB_WARNING_1__LEVEL__ALARM_CHOICE (1u)
#define SR439_OBJ_0_STATUS_RL_OBJ_RCTB_WARNING_2__LEVEL__ALARM_CHOICE (2u)

#define SR439_OBJ_0_STATUS_RL_OBJ_FCTA_WARNING_NO__ALARM_CHOICE (0u)
#define SR439_OBJ_0_STATUS_RL_OBJ_FCTA_WARNING_1__LEVEL__ALARM_CHOICE (1u)
#define SR439_OBJ_0_STATUS_RL_OBJ_FCTA_WARNING_2__LEVEL__ALARM_CHOICE (2u)

#define SR439_OBJ_0_STATUS_RL_OBJ_FCTB_WARNING_NO__ALARM_CHOICE (0u)
#define SR439_OBJ_0_STATUS_RL_OBJ_FCTB_WARNING_1__LEVEL__ALARM_CHOICE (1u)
#define SR439_OBJ_0_STATUS_RL_OBJ_FCTB_WARNING_2__LEVEL__ALARM_CHOICE (2u)

#define SR439_CLUSTER_GENERAL_INFORMATION_RL_CLUSTER_DYN_PROP_1_STOP_CHOICE (0u)
#define SR439_CLUSTER_GENERAL_INFORMATION_RL_CLUSTER_DYN_PROP_1_MOVING_CHOICE (1u)
#define SR439_CLUSTER_GENERAL_INFORMATION_RL_CLUSTER_DYN_PROP_1_MOVING_FROM_STOP_CHOICE (2u)
#define SR439_CLUSTER_GENERAL_INFORMATION_RL_CLUSTER_DYN_PROP_1_STOP_FROM_MOVING_CHOICE (3u)

#define SR439_CLUSTER_GENERAL_INFORMATION_RL_CLUSTER_PROB_OF_EXIST_1_INVALID_CHOICE (0u)
#define SR439_CLUSTER_GENERAL_INFORMATION_RL_CLUSTER_PROB_OF_EXIST_1__25__CHOICE (1u)
#define SR439_CLUSTER_GENERAL_INFORMATION_RL_CLUSTER_PROB_OF_EXIST_1__50__CHOICE (2u)
#define SR439_CLUSTER_GENERAL_INFORMATION_RL_CLUSTER_PROB_OF_EXIST_1__75__CHOICE (3u)
#define SR439_CLUSTER_GENERAL_INFORMATION_RL_CLUSTER_PROB_OF_EXIST_1__90__CHOICE (4u)
#define SR439_CLUSTER_GENERAL_INFORMATION_RL_CLUSTER_PROB_OF_EXIST_1__99__CHOICE (5u)
#define SR439_CLUSTER_GENERAL_INFORMATION_RL_CLUSTER_PROB_OF_EXIST_1__99_9__CHOICE (6u)
#define SR439_CLUSTER_GENERAL_INFORMATION_RL_CLUSTER_PROB_OF_EXIST_1___100__CHOICE (7u)

#define SR439_CLUSTER_GENERAL_INFORMATION_RL_CLUSTER_DYN_PROP_2_STOP_CHOICE (0u)
#define SR439_CLUSTER_GENERAL_INFORMATION_RL_CLUSTER_DYN_PROP_2_MOVING_CHOICE (1u)
#define SR439_CLUSTER_GENERAL_INFORMATION_RL_CLUSTER_DYN_PROP_2_MOVING_FROM_STOP_CHOICE (2u)
#define SR439_CLUSTER_GENERAL_INFORMATION_RL_CLUSTER_DYN_PROP_2_STOP_FROM_MOVING_CHOICE (3u)

#define SR439_CLUSTER_GENERAL_INFORMATION_RL_CLUSTER_PROB_OF_EXIST_2_INVALID_CHOICE (0u)
#define SR439_CLUSTER_GENERAL_INFORMATION_RL_CLUSTER_PROB_OF_EXIST_2__25__CHOICE (1u)
#define SR439_CLUSTER_GENERAL_INFORMATION_RL_CLUSTER_PROB_OF_EXIST_2__50__CHOICE (2u)
#define SR439_CLUSTER_GENERAL_INFORMATION_RL_CLUSTER_PROB_OF_EXIST_2__75__CHOICE (3u)
#define SR439_CLUSTER_GENERAL_INFORMATION_RL_CLUSTER_PROB_OF_EXIST_2__90__CHOICE (4u)
#define SR439_CLUSTER_GENERAL_INFORMATION_RL_CLUSTER_PROB_OF_EXIST_2__99__CHOICE (5u)
#define SR439_CLUSTER_GENERAL_INFORMATION_RL_CLUSTER_PROB_OF_EXIST_2__99_9__CHOICE (6u)
#define SR439_CLUSTER_GENERAL_INFORMATION_RL_CLUSTER_PROB_OF_EXIST_2___100__CHOICE (7u)

#define SR439_CLUSTER_GENERAL_INFORMATION_RL_CLUSTER_DYN_PROP_3_STOP_CHOICE (0u)
#define SR439_CLUSTER_GENERAL_INFORMATION_RL_CLUSTER_DYN_PROP_3_MOVING_CHOICE (1u)
#define SR439_CLUSTER_GENERAL_INFORMATION_RL_CLUSTER_DYN_PROP_3_MOVING_FROM_STOP_CHOICE (2u)
#define SR439_CLUSTER_GENERAL_INFORMATION_RL_CLUSTER_DYN_PROP_3_STOP_FROM_MOVING_CHOICE (3u)

#define SR439_CLUSTER_GENERAL_INFORMATION_RL_CLUSTER_PROB_OF_EXIST_3_INVALID_CHOICE (0u)
#define SR439_CLUSTER_GENERAL_INFORMATION_RL_CLUSTER_PROB_OF_EXIST_3__25__CHOICE (1u)
#define SR439_CLUSTER_GENERAL_INFORMATION_RL_CLUSTER_PROB_OF_EXIST_3__50__CHOICE (2u)
#define SR439_CLUSTER_GENERAL_INFORMATION_RL_CLUSTER_PROB_OF_EXIST_3__75__CHOICE (3u)
#define SR439_CLUSTER_GENERAL_INFORMATION_RL_CLUSTER_PROB_OF_EXIST_3__90__CHOICE (4u)
#define SR439_CLUSTER_GENERAL_INFORMATION_RL_CLUSTER_PROB_OF_EXIST_3__99__CHOICE (5u)
#define SR439_CLUSTER_GENERAL_INFORMATION_RL_CLUSTER_PROB_OF_EXIST_3__99_9__CHOICE (6u)
#define SR439_CLUSTER_GENERAL_INFORMATION_RL_CLUSTER_PROB_OF_EXIST_3___100__CHOICE (7u)

#define SR439_CLUSTER_GENERAL_INFORMATION_RL_CLUSTER_DYN_PROP_4_STOP_CHOICE (0u)
#define SR439_CLUSTER_GENERAL_INFORMATION_RL_CLUSTER_DYN_PROP_4_MOVING_CHOICE (1u)
#define SR439_CLUSTER_GENERAL_INFORMATION_RL_CLUSTER_DYN_PROP_4_MOVING_FROM_STOP_CHOICE (2u)
#define SR439_CLUSTER_GENERAL_INFORMATION_RL_CLUSTER_DYN_PROP_4_STOP_FROM_MOVING_CHOICE (3u)

#define SR439_CLUSTER_GENERAL_INFORMATION_RL_CLUSTER_PROB_OF_EXIST_4_INVALID_CHOICE (0u)
#define SR439_CLUSTER_GENERAL_INFORMATION_RL_CLUSTER_PROB_OF_EXIST_4__25__CHOICE (1u)
#define SR439_CLUSTER_GENERAL_INFORMATION_RL_CLUSTER_PROB_OF_EXIST_4__50__CHOICE (2u)
#define SR439_CLUSTER_GENERAL_INFORMATION_RL_CLUSTER_PROB_OF_EXIST_4__75__CHOICE (3u)
#define SR439_CLUSTER_GENERAL_INFORMATION_RL_CLUSTER_PROB_OF_EXIST_4__90__CHOICE (4u)
#define SR439_CLUSTER_GENERAL_INFORMATION_RL_CLUSTER_PROB_OF_EXIST_4__99__CHOICE (5u)
#define SR439_CLUSTER_GENERAL_INFORMATION_RL_CLUSTER_PROB_OF_EXIST_4__99_9__CHOICE (6u)
#define SR439_CLUSTER_GENERAL_INFORMATION_RL_CLUSTER_PROB_OF_EXIST_4___100__CHOICE (7u)

#define SR439_CLUSTER_GENERAL_INFORMATION_RL_CLUSTER_DYN_PROP_5_STOP_CHOICE (0u)
#define SR439_CLUSTER_GENERAL_INFORMATION_RL_CLUSTER_DYN_PROP_5_MOVING_CHOICE (1u)
#define SR439_CLUSTER_GENERAL_INFORMATION_RL_CLUSTER_DYN_PROP_5_MOVING_FROM_STOP_CHOICE (2u)
#define SR439_CLUSTER_GENERAL_INFORMATION_RL_CLUSTER_DYN_PROP_5_STOP_FROM_MOVING_CHOICE (3u)

#define SR439_CLUSTER_GENERAL_INFORMATION_RL_CLUSTER_PROB_OF_EXIST_5_INVALID_CHOICE (0u)
#define SR439_CLUSTER_GENERAL_INFORMATION_RL_CLUSTER_PROB_OF_EXIST_5__25__CHOICE (1u)
#define SR439_CLUSTER_GENERAL_INFORMATION_RL_CLUSTER_PROB_OF_EXIST_5__50__CHOICE (2u)
#define SR439_CLUSTER_GENERAL_INFORMATION_RL_CLUSTER_PROB_OF_EXIST_5__75__CHOICE (3u)
#define SR439_CLUSTER_GENERAL_INFORMATION_RL_CLUSTER_PROB_OF_EXIST_5__90__CHOICE (4u)
#define SR439_CLUSTER_GENERAL_INFORMATION_RL_CLUSTER_PROB_OF_EXIST_5__99__CHOICE (5u)
#define SR439_CLUSTER_GENERAL_INFORMATION_RL_CLUSTER_PROB_OF_EXIST_5__99_9__CHOICE (6u)
#define SR439_CLUSTER_GENERAL_INFORMATION_RL_CLUSTER_PROB_OF_EXIST_5___100__CHOICE (7u)

#define SR439_CLUSTER_HEADER_RL_CLUSTER_RADAR_IDENTIFY_REAR__LEFT__CORNER__RADAR_CHOICE (0u)
#define SR439_CLUSTER_HEADER_RL_CLUSTER_RADAR_IDENTIFY_FRONT__LEFT__CORNER__RADAR_CHOICE (1u)
#define SR439_CLUSTER_HEADER_RL_CLUSTER_RADAR_IDENTIFY_FRONT__RIGHT__CORNER__RADAR_CHOICE (2u)
#define SR439_CLUSTER_HEADER_RL_CLUSTER_RADAR_IDENTIFY_REAR__RIGHT__CORNER__RADAR_CHOICE (3u)

/* Frame Names. */
#define SR439_VEH_INFO2_NAME "VehInfo2"
#define SR439_VEH_INFO1_NAME "VehInfo1"
#define SR439_VEH_INFO_RADAR1_NAME "VehInfo_Radar1"
#define SR439_VEH_INFO_RADAR2_NAME "VehInfo_Radar2"
#define SR439_CHANGCHENG_TEST_STATE_NAME "changcheng_Test_State"
#define SR439_OBJ_END_MSG_RR_NAME "Obj_End_Msg_RR"
#define SR439_OBJ_END_MSG_FR_NAME "Obj_End_Msg_FR"
#define SR439_OBJ_END_MSG_FL_NAME "Obj_End_Msg_FL"
#define SR439_OBJ_END_MSG_RL_NAME "Obj_End_Msg_RL"
#define SR439_OBJ_QUALITY_INFO_RR_NAME "Obj_Quality_Info_RR"
#define SR439_OBJ_QUALITY_INFO_FR_NAME "Obj_Quality_Info_FR"
#define SR439_OBJ_QUALITY_INFO_FL_NAME "Obj_Quality_Info_FL"
#define SR439_OBJ_GENERAL_INFO_RR_NAME "Obj_General_Info_RR"
#define SR439_OBJ_GENERAL_INFO_FR_NAME "Obj_General_Info_FR"
#define SR439_OBJ_GENERAL_INFO_FL_NAME "Obj_General_Info_FL"
#define SR439_OBJ_EXTENDED_INFO_RR_NAME "Obj_Extended_Info_RR"
#define SR439_OBJ_EXTENDED_INFO_FR_NAME "Obj_Extended_Info_FR"
#define SR439_OBJ_EXTENDED_INFO_FL_NAME "Obj_Extended_Info_FL"
#define SR439_OBJ_COLLISION_INFO_RR_NAME "Obj_Collision_Info_RR"
#define SR439_OBJ_COLLISION_INFO_FR_NAME "Obj_Collision_Info_FR"
#define SR439_OBJ_COLLISION_INFO_FL_NAME "Obj_Collision_Info_FL"
#define SR439_OBJ_0_STATUS_RR_NAME "Obj_0_Status_RR"
#define SR439_OBJ_0_STATUS_FR_NAME "Obj_0_Status_FR"
#define SR439_OBJ_0_STATUS_FL_NAME "Obj_0_Status_FL"
#define SR439_CLUSTER_HEADER_RR_NAME "Cluster_Header_RR"
#define SR439_CLUSTER_HEADER_FR_NAME "Cluster_Header_FR"
#define SR439_CLUSTER_HEADER_FL_NAME "Cluster_Header_FL"
#define SR439_CLUSTER_GENERAL_INFORMATION_RR_NAME "Cluster_General_Information_RR"
#define SR439_CLUSTER_GENERAL_INFORMATION_FR_NAME "Cluster_General_Information_FR"
#define SR439_CLUSTER_GENERAL_INFORMATION_FL_NAME "Cluster_General_Information_FL"
#define SR439_OBJ_COLLISION_INFO_RL_NAME "Obj_Collision_Info_RL"
#define SR439_OBJ_EXTENDED_INFO_RL_NAME "Obj_Extended_Info_RL"
#define SR439_OBJ_QUALITY_INFO_RL_NAME "Obj_Quality_Info_RL"
#define SR439_RADAR_REAR_ADAS_NAME "Radar_Rear_ADAS"
#define SR439_OBJ_GENERAL_INFO_RL_NAME "Obj_General_Info_RL"
#define SR439_OBJ_0_STATUS_RL_NAME "Obj_0_Status_RL"
#define SR439_CLUSTER_GENERAL_INFORMATION_RL_NAME "Cluster_General_Information_RL"
#define SR439_CLUSTER_HEADER_RL_NAME "Cluster_Header_RL"

/* Signal Names. */
#define SR439_VEH_INFO2_GEAR_STATE_NOW_NAME "GEAR_STATE_NOW"
#define SR439_VEH_INFO2_GEAR_STA_NOW_V_NAME "GEAR_STA_NOW_V"
#define SR439_VEH_INFO2_IGN_STATE_V_NAME "IGN_State_V"
#define SR439_VEH_INFO2_IGN_STATE_NAME "IGN_State"
#define SR439_VEH_INFO1_VEH_SPEED_V_NAME "VehSpeed_V"
#define SR439_VEH_INFO1_YAW_RAT_V_NAME "YawRat_V"
#define SR439_VEH_INFO1_STR_ANGLE_V_NAME "Str_Angle_V"
#define SR439_VEH_INFO1_VEH_SPEED_IN_NAME "VehSpeed_IN"
#define SR439_VEH_INFO1_YAW_RATE_IN_NAME "YawRate_IN"
#define SR439_VEH_INFO1_STR_ANGLE_NAME "Str_Angle"
#define SR439_VEH_INFO_RADAR1_STEER_ANGLE_NAME "Steer_Angle"
#define SR439_VEH_INFO_RADAR1_GEAR_STS_NAME "GEAR_Sts"
#define SR439_VEH_INFO_RADAR1_VEH_SPEED_NAME "VehSpeed"
#define SR439_VEH_INFO_RADAR1_YAW_RATE_RAW_NAME "YawRate_Raw"
#define SR439_VEH_INFO_RADAR2_STEER_ANGLE_NAME "Steer_Angle"
#define SR439_VEH_INFO_RADAR2_GEAR_STS_NAME "GEAR_Sts"
#define SR439_VEH_INFO_RADAR2_VEH_SPEED_NAME "VehSpeed"
#define SR439_VEH_INFO_RADAR2_YAW_RATE_RAW_NAME "YawRate_Raw"
#define SR439_CHANGCHENG_TEST_STATE_CHANGCHENG_LOCK_STS_NAME "changcheng_LockSts"
#define SR439_CHANGCHENG_TEST_STATE_CHANGCHENG_DRIVER_DOOR_STS_NAME "changcheng_DriverDoorSts"
#define SR439_CHANGCHENG_TEST_STATE_CHANGCHENG_RL_DOOR_STS_NAME "changcheng_RLDoorSts"
#define SR439_CHANGCHENG_TEST_STATE_CHANGCHENG_PASSENGER_DOOR_STS_NAME "changcheng_PassengerDoorSts"
#define SR439_CHANGCHENG_TEST_STATE_CHANGCHENG_RR_DOOR_STS_NAME "changcheng_RRDoorSts"
#define SR439_CHANGCHENG_TEST_STATE_CHANGCHENG_LEFT_TURN_SW_STS_NAME "changcheng_LeftTurnSWSts"
#define SR439_CHANGCHENG_TEST_STATE_CHANGCHENG_RIGHT_TURN_SW_STS_NAME "changcheng_RightTurnSWSts"
#define SR439_OBJ_END_MSG_RR_RF_VOLTAGE1_TOO_LOW_NAME "RF_Voltage1_too_low"
#define SR439_OBJ_END_MSG_RR_MCU_VOLTAGE_TOO_LOW_NAME "MCU_Voltage_too_low"
#define SR439_OBJ_END_MSG_RR_MCU_VOLTAGE_TOO_HIGH_NAME "MCU_Voltage_too_high"
#define SR439_OBJ_END_MSG_RR_MCU_TEMPERATURE_TOO_LOW_NAME "MCU_Temperature_too_low"
#define SR439_OBJ_END_MSG_RR_MCU_TEMPERATURE_TOO_HIGH_NAME "MCU_Temperature_too_high"
#define SR439_OBJ_END_MSG_RR_LOST_COMMUNICATION_WITH_CAMERA_NAME "Lost_Communication_With_Camera"
#define SR439_OBJ_END_MSG_RR_COMMUNICATION_BUS_OFF_NAME "Communication_Bus_OFF"
#define SR439_OBJ_END_MSG_RR_RADAR_SLEEP_FLAG_NAME "Radar_Sleep_Flag"
#define SR439_OBJ_END_MSG_RR_MCU_MASTER_CLOCK_ERROR_NAME "MCU_Master_Clock_Error"
#define SR439_OBJ_END_MSG_RR_RF_TEMPERATURE_TOO_LOW_NAME "RF_Temperature_too_low"
#define SR439_OBJ_END_MSG_RR_RF_TEMPERATURE_TOO_HIGH_NAME "RF_Temperature_too_high"
#define SR439_OBJ_END_MSG_RR_BATTERY_VOLTAGE_TOO_LOW_NAME "Battery_Voltage_too_low"
#define SR439_OBJ_END_MSG_RR_BATTERY_VOLTAGE_TOO_HIGH_NAME "Battery_Voltage_too_high"
#define SR439_OBJ_END_MSG_RR_RF_VOLTAGE2_TOO_HIGH_NAME "RF_Voltage2_too_high"
#define SR439_OBJ_END_MSG_RR_RF_VOLTAGE2_TOO_LOW_NAME "RF_Voltage2_too_low"
#define SR439_OBJ_END_MSG_RR_RF_VOLTAGE1_TOO_HIGH_NAME "RF_Voltage1_too_high"
#define SR439_OBJ_END_MSG_RR_INVALID_STEERING_ANGLE_SIGNAL_NAME "Invalid_Steering_Angle_signal"
#define SR439_OBJ_END_MSG_RR_INVALID_YAW_RATE_SIGNAL_NAME "Invalid_Yaw_Rate_signal"
#define SR439_OBJ_END_MSG_RR_INVALID_VEHICLE_SPEED_SIGNAL_NAME "Invalid_Vehicle_Speed_signal"
#define SR439_OBJ_END_MSG_RR_MISSING_CALIBRATION_NAME "Missing_Calibration"
#define SR439_OBJ_END_MSG_RR_RF_SENSOR_FAULT_NAME "RF_Sensor_fault"
#define SR439_OBJ_END_MSG_RR_G_SENSOR_FAULT_NAME "G_Sensor_fault"
#define SR439_OBJ_END_MSG_RR_MCU_MEMORY_ERROR_NAME "MCU_Memory_Error"
#define SR439_OBJ_END_MSG_RR_MCU_ERROR_NAME "MCU_Error"
#define SR439_OBJ_END_MSG_RR_RADAR_MOUNT_POSITION_SHIFT_ERROR_NAME "Radar_Mount_Position_Shift_Error"
#define SR439_OBJ_END_MSG_RR_RADAR_BLOCK_NAME "Radar_block"
#define SR439_OBJ_END_MSG_RR_INVALID_IGN_STA_SIGNAL_NAME "Invalid_IGN_Sta_signal"
#define SR439_OBJ_END_MSG_RR_INVALID_GEAR_POSITION_SIGNAL_NAME "Invalid_Gear_position_signal"
#define SR439_OBJ_END_MSG_RR_RADAR_YAW_RATE_RAW_V_NAME "Radar_YawRate_Raw_V"
#define SR439_OBJ_END_MSG_FR_RF_VOLTAGE1_TOO_LOW_NAME "RF_Voltage1_too_low"
#define SR439_OBJ_END_MSG_FR_MCU_VOLTAGE_TOO_LOW_NAME "MCU_Voltage_too_low"
#define SR439_OBJ_END_MSG_FR_MCU_VOLTAGE_TOO_HIGH_NAME "MCU_Voltage_too_high"
#define SR439_OBJ_END_MSG_FR_MCU_TEMPERATURE_TOO_LOW_NAME "MCU_Temperature_too_low"
#define SR439_OBJ_END_MSG_FR_MCU_TEMPERATURE_TOO_HIGH_NAME "MCU_Temperature_too_high"
#define SR439_OBJ_END_MSG_FR_LOST_COMMUNICATION_WITH_CAMERA_NAME "Lost_Communication_With_Camera"
#define SR439_OBJ_END_MSG_FR_COMMUNICATION_BUS_OFF_NAME "Communication_Bus_OFF"
#define SR439_OBJ_END_MSG_FR_RADAR_SLEEP_FLAG_NAME "Radar_Sleep_Flag"
#define SR439_OBJ_END_MSG_FR_MCU_MASTER_CLOCK_ERROR_NAME "MCU_Master_Clock_Error"
#define SR439_OBJ_END_MSG_FR_RF_TEMPERATURE_TOO_LOW_NAME "RF_Temperature_too_low"
#define SR439_OBJ_END_MSG_FR_RF_TEMPERATURE_TOO_HIGH_NAME "RF_Temperature_too_high"
#define SR439_OBJ_END_MSG_FR_BATTERY_VOLTAGE_TOO_LOW_NAME "Battery_Voltage_too_low"
#define SR439_OBJ_END_MSG_FR_BATTERY_VOLTAGE_TOO_HIGH_NAME "Battery_Voltage_too_high"
#define SR439_OBJ_END_MSG_FR_RF_VOLTAGE2_TOO_HIGH_NAME "RF_Voltage2_too_high"
#define SR439_OBJ_END_MSG_FR_RF_VOLTAGE2_TOO_LOW_NAME "RF_Voltage2_too_low"
#define SR439_OBJ_END_MSG_FR_RF_VOLTAGE1_TOO_HIGH_NAME "RF_Voltage1_too_high"
#define SR439_OBJ_END_MSG_FR_INVALID_STEERING_ANGLE_SIGNAL_NAME "Invalid_Steering_Angle_signal"
#define SR439_OBJ_END_MSG_FR_INVALID_YAW_RATE_SIGNAL_NAME "Invalid_Yaw_Rate_signal"
#define SR439_OBJ_END_MSG_FR_INVALID_VEHICLE_SPEED_SIGNAL_NAME "Invalid_Vehicle_Speed_signal"
#define SR439_OBJ_END_MSG_FR_MISSING_CALIBRATION_NAME "Missing_Calibration"
#define SR439_OBJ_END_MSG_FR_RF_SENSOR_FAULT_NAME "RF_Sensor_fault"
#define SR439_OBJ_END_MSG_FR_G_SENSOR_FAULT_NAME "G_Sensor_fault"
#define SR439_OBJ_END_MSG_FR_MCU_MEMORY_ERROR_NAME "MCU_Memory_Error"
#define SR439_OBJ_END_MSG_FR_MCU_ERROR_NAME "MCU_Error"
#define SR439_OBJ_END_MSG_FR_RADAR_MOUNT_POSITION_SHIFT_ERROR_NAME "Radar_Mount_Position_Shift_Error"
#define SR439_OBJ_END_MSG_FR_RADAR_BLOCK_NAME "Radar_block"
#define SR439_OBJ_END_MSG_FR_INVALID_IGN_STA_SIGNAL_NAME "Invalid_IGN_Sta_signal"
#define SR439_OBJ_END_MSG_FR_INVALID_GEAR_POSITION_SIGNAL_NAME "Invalid_Gear_position_signal"
#define SR439_OBJ_END_MSG_FR_RADAR_YAW_RATE_RAW_V_NAME "Radar_YawRate_Raw_V"
#define SR439_OBJ_END_MSG_FL_RF_VOLTAGE1_TOO_LOW_NAME "RF_Voltage1_too_low"
#define SR439_OBJ_END_MSG_FL_MCU_VOLTAGE_TOO_LOW_NAME "MCU_Voltage_too_low"
#define SR439_OBJ_END_MSG_FL_MCU_VOLTAGE_TOO_HIGH_NAME "MCU_Voltage_too_high"
#define SR439_OBJ_END_MSG_FL_MCU_TEMPERATURE_TOO_LOW_NAME "MCU_Temperature_too_low"
#define SR439_OBJ_END_MSG_FL_MCU_TEMPERATURE_TOO_HIGH_NAME "MCU_Temperature_too_high"
#define SR439_OBJ_END_MSG_FL_LOST_COMMUNICATION_WITH_CAMERA_NAME "Lost_Communication_With_Camera"
#define SR439_OBJ_END_MSG_FL_COMMUNICATION_BUS_OFF_NAME "Communication_Bus_OFF"
#define SR439_OBJ_END_MSG_FL_RADAR_SLEEP_FLAG_NAME "Radar_Sleep_Flag"
#define SR439_OBJ_END_MSG_FL_MCU_MASTER_CLOCK_ERROR_NAME "MCU_Master_Clock_Error"
#define SR439_OBJ_END_MSG_FL_RF_TEMPERATURE_TOO_LOW_NAME "RF_Temperature_too_low"
#define SR439_OBJ_END_MSG_FL_RF_TEMPERATURE_TOO_HIGH_NAME "RF_Temperature_too_high"
#define SR439_OBJ_END_MSG_FL_BATTERY_VOLTAGE_TOO_LOW_NAME "Battery_Voltage_too_low"
#define SR439_OBJ_END_MSG_FL_BATTERY_VOLTAGE_TOO_HIGH_NAME "Battery_Voltage_too_high"
#define SR439_OBJ_END_MSG_FL_RF_VOLTAGE2_TOO_HIGH_NAME "RF_Voltage2_too_high"
#define SR439_OBJ_END_MSG_FL_RF_VOLTAGE2_TOO_LOW_NAME "RF_Voltage2_too_low"
#define SR439_OBJ_END_MSG_FL_RF_VOLTAGE1_TOO_HIGH_NAME "RF_Voltage1_too_high"
#define SR439_OBJ_END_MSG_FL_INVALID_STEERING_ANGLE_SIGNAL_NAME "Invalid_Steering_Angle_signal"
#define SR439_OBJ_END_MSG_FL_INVALID_YAW_RATE_SIGNAL_NAME "Invalid_Yaw_Rate_signal"
#define SR439_OBJ_END_MSG_FL_INVALID_VEHICLE_SPEED_SIGNAL_NAME "Invalid_Vehicle_Speed_signal"
#define SR439_OBJ_END_MSG_FL_MISSING_CALIBRATION_NAME "Missing_Calibration"
#define SR439_OBJ_END_MSG_FL_RF_SENSOR_FAULT_NAME "RF_Sensor_fault"
#define SR439_OBJ_END_MSG_FL_G_SENSOR_FAULT_NAME "G_Sensor_fault"
#define SR439_OBJ_END_MSG_FL_MCU_MEMORY_ERROR_NAME "MCU_Memory_Error"
#define SR439_OBJ_END_MSG_FL_MCU_ERROR_NAME "MCU_Error"
#define SR439_OBJ_END_MSG_FL_RADAR_MOUNT_POSITION_SHIFT_ERROR_NAME "Radar_Mount_Position_Shift_Error"
#define SR439_OBJ_END_MSG_FL_RADAR_BLOCK_NAME "Radar_block"
#define SR439_OBJ_END_MSG_FL_INVALID_IGN_STA_SIGNAL_NAME "Invalid_IGN_Sta_signal"
#define SR439_OBJ_END_MSG_FL_INVALID_GEAR_POSITION_SIGNAL_NAME "Invalid_Gear_position_signal"
#define SR439_OBJ_END_MSG_FL_RADAR_YAW_RATE_RAW_V_NAME "Radar_YawRate_Raw_V"
#define SR439_OBJ_END_MSG_RL_RF_VOLTAGE1_TOO_LOW_NAME "RF_Voltage1_too_low"
#define SR439_OBJ_END_MSG_RL_MCU_VOLTAGE_TOO_LOW_NAME "MCU_Voltage_too_low"
#define SR439_OBJ_END_MSG_RL_MCU_VOLTAGE_TOO_HIGH_NAME "MCU_Voltage_too_high"
#define SR439_OBJ_END_MSG_RL_MCU_TEMPERATURE_TOO_LOW_NAME "MCU_Temperature_too_low"
#define SR439_OBJ_END_MSG_RL_MCU_TEMPERATURE_TOO_HIGH_NAME "MCU_Temperature_too_high"
#define SR439_OBJ_END_MSG_RL_LOST_COMMUNICATION_WITH_CAMERA_NAME "Lost_Communication_With_Camera"
#define SR439_OBJ_END_MSG_RL_COMMUNICATION_BUS_OFF_NAME "Communication_Bus_OFF"
#define SR439_OBJ_END_MSG_RL_RADAR_SLEEP_FLAG_NAME "Radar_Sleep_Flag"
#define SR439_OBJ_END_MSG_RL_MCU_MASTER_CLOCK_ERROR_NAME "MCU_Master_Clock_Error"
#define SR439_OBJ_END_MSG_RL_RF_TEMPERATURE_TOO_LOW_NAME "RF_Temperature_too_low"
#define SR439_OBJ_END_MSG_RL_RF_TEMPERATURE_TOO_HIGH_NAME "RF_Temperature_too_high"
#define SR439_OBJ_END_MSG_RL_BATTERY_VOLTAGE_TOO_LOW_NAME "Battery_Voltage_too_low"
#define SR439_OBJ_END_MSG_RL_BATTERY_VOLTAGE_TOO_HIGH_NAME "Battery_Voltage_too_high"
#define SR439_OBJ_END_MSG_RL_RF_VOLTAGE2_TOO_HIGH_NAME "RF_Voltage2_too_high"
#define SR439_OBJ_END_MSG_RL_RF_VOLTAGE2_TOO_LOW_NAME "RF_Voltage2_too_low"
#define SR439_OBJ_END_MSG_RL_RF_VOLTAGE1_TOO_HIGH_NAME "RF_Voltage1_too_high"
#define SR439_OBJ_END_MSG_RL_INVALID_STEERING_ANGLE_SIGNAL_NAME "Invalid_Steering_Angle_signal"
#define SR439_OBJ_END_MSG_RL_INVALID_YAW_RATE_SIGNAL_NAME "Invalid_Yaw_Rate_signal"
#define SR439_OBJ_END_MSG_RL_INVALID_VEHICLE_SPEED_SIGNAL_NAME "Invalid_Vehicle_Speed_signal"
#define SR439_OBJ_END_MSG_RL_MISSING_CALIBRATION_NAME "Missing_Calibration"
#define SR439_OBJ_END_MSG_RL_RF_SENSOR_FAULT_NAME "RF_Sensor_fault"
#define SR439_OBJ_END_MSG_RL_G_SENSOR_FAULT_NAME "G_Sensor_fault"
#define SR439_OBJ_END_MSG_RL_MCU_MEMORY_ERROR_NAME "MCU_Memory_Error"
#define SR439_OBJ_END_MSG_RL_MCU_ERROR_NAME "MCU_Error"
#define SR439_OBJ_END_MSG_RL_RADAR_MOUNT_POSITION_SHIFT_ERROR_NAME "Radar_Mount_Position_Shift_Error"
#define SR439_OBJ_END_MSG_RL_RADAR_BLOCK_NAME "Radar_block"
#define SR439_OBJ_END_MSG_RL_INVALID_IGN_STA_SIGNAL_NAME "Invalid_IGN_Sta_signal"
#define SR439_OBJ_END_MSG_RL_INVALID_GEAR_POSITION_SIGNAL_NAME "Invalid_Gear_position_signal"
#define SR439_OBJ_END_MSG_RL_RADAR_YAW_RATE_RAW_V_NAME "Radar_YawRate_Raw_V"
#define SR439_OBJ_QUALITY_INFO_RR_OBJ_ID_NAME "OBJ_ID"
#define SR439_OBJ_QUALITY_INFO_RR_OBJ_DIST_LON_RMS_NAME "Obj_DistLonRMS"
#define SR439_OBJ_QUALITY_INFO_RR_OBJ_DIST_LAT_RMS_NAME "Obj_DistLatRMS"
#define SR439_OBJ_QUALITY_INFO_RR_OBJ_VEL_LON_RMS_NAME "Obj_VelLonRMS"
#define SR439_OBJ_QUALITY_INFO_RR_OBJ_VEL_LAT_RMS_NAME "Obj_VelLatRMS"
#define SR439_OBJ_QUALITY_INFO_RR_OBJ_ACC_LON_RMS_NAME "Obj_AccLonRMS"
#define SR439_OBJ_QUALITY_INFO_RR_OBJ_ACC_LAT_RMS_NAME "Obj_AccLatRMS"
#define SR439_OBJ_QUALITY_INFO_RR_OBJ_CIPV_NAME "Obj_CIPV"
#define SR439_OBJ_QUALITY_INFO_RR_OBJ_PROB_OF_CLASS_NAME "Obj_ProbOfClass"
#define SR439_OBJ_QUALITY_INFO_RR_OBJ_PROB_OF_EXIST_NAME "Obj_ProbOfExist"
#define SR439_OBJ_QUALITY_INFO_RR_OBJ_MEAS_STATE_NAME "Obj_MeasState"
#define SR439_OBJ_QUALITY_INFO_FR_OBJ_ID_NAME "OBJ_ID"
#define SR439_OBJ_QUALITY_INFO_FR_OBJ_DIST_LON_RMS_NAME "Obj_DistLonRMS"
#define SR439_OBJ_QUALITY_INFO_FR_OBJ_DIST_LAT_RMS_NAME "Obj_DistLatRMS"
#define SR439_OBJ_QUALITY_INFO_FR_OBJ_VEL_LON_RMS_NAME "Obj_VelLonRMS"
#define SR439_OBJ_QUALITY_INFO_FR_OBJ_VEL_LAT_RMS_NAME "Obj_VelLatRMS"
#define SR439_OBJ_QUALITY_INFO_FR_OBJ_ACC_LON_RMS_NAME "Obj_AccLonRMS"
#define SR439_OBJ_QUALITY_INFO_FR_OBJ_ACC_LAT_RMS_NAME "Obj_AccLatRMS"
#define SR439_OBJ_QUALITY_INFO_FR_OBJ_CIPV_NAME "Obj_CIPV"
#define SR439_OBJ_QUALITY_INFO_FR_OBJ_PROB_OF_CLASS_NAME "Obj_ProbOfClass"
#define SR439_OBJ_QUALITY_INFO_FR_OBJ_PROB_OF_EXIST_NAME "Obj_ProbOfExist"
#define SR439_OBJ_QUALITY_INFO_FR_OBJ_MEAS_STATE_NAME "Obj_MeasState"
#define SR439_OBJ_QUALITY_INFO_FL_OBJ_ID_NAME "OBJ_ID"
#define SR439_OBJ_QUALITY_INFO_FL_OBJ_DIST_LON_RMS_NAME "Obj_DistLonRMS"
#define SR439_OBJ_QUALITY_INFO_FL_OBJ_DIST_LAT_RMS_NAME "Obj_DistLatRMS"
#define SR439_OBJ_QUALITY_INFO_FL_OBJ_VEL_LON_RMS_NAME "Obj_VelLonRMS"
#define SR439_OBJ_QUALITY_INFO_FL_OBJ_VEL_LAT_RMS_NAME "Obj_VelLatRMS"
#define SR439_OBJ_QUALITY_INFO_FL_OBJ_ACC_LON_RMS_NAME "Obj_AccLonRMS"
#define SR439_OBJ_QUALITY_INFO_FL_OBJ_ACC_LAT_RMS_NAME "Obj_AccLatRMS"
#define SR439_OBJ_QUALITY_INFO_FL_OBJ_CIPV_NAME "Obj_CIPV"
#define SR439_OBJ_QUALITY_INFO_FL_OBJ_PROB_OF_CLASS_NAME "Obj_ProbOfClass"
#define SR439_OBJ_QUALITY_INFO_FL_OBJ_PROB_OF_EXIST_NAME "Obj_ProbOfExist"
#define SR439_OBJ_QUALITY_INFO_FL_OBJ_MEAS_STATE_NAME "Obj_MeasState"
#define SR439_OBJ_GENERAL_INFO_RR_OBJ_ID_NAME "OBJ_ID"
#define SR439_OBJ_GENERAL_INFO_RR_OBJ_DIST_LONG_NAME "Obj_DistLong"
#define SR439_OBJ_GENERAL_INFO_RR_OBJ_DIST_LAT_NAME "Obj_DistLat"
#define SR439_OBJ_GENERAL_INFO_RR_OBJ_DYN_PROP_NAME "Obj_DynProp"
#define SR439_OBJ_GENERAL_INFO_RR_OBJ_VREL_LONG_NAME "Obj_VrelLong"
#define SR439_OBJ_GENERAL_INFO_RR_OBJ_VREL_LAT_NAME "Obj_VrelLat"
#define SR439_OBJ_GENERAL_INFO_FR_OBJ_ID_NAME "OBJ_ID"
#define SR439_OBJ_GENERAL_INFO_FR_OBJ_DIST_LONG_NAME "Obj_DistLong"
#define SR439_OBJ_GENERAL_INFO_FR_OBJ_DIST_LAT_NAME "Obj_DistLat"
#define SR439_OBJ_GENERAL_INFO_FR_OBJ_DYN_PROP_NAME "Obj_DynProp"
#define SR439_OBJ_GENERAL_INFO_FR_OBJ_VREL_LONG_NAME "Obj_VrelLong"
#define SR439_OBJ_GENERAL_INFO_FR_OBJ_VREL_LAT_NAME "Obj_VrelLat"
#define SR439_OBJ_GENERAL_INFO_FL_OBJ_ID_NAME "OBJ_ID"
#define SR439_OBJ_GENERAL_INFO_FL_OBJ_DIST_LONG_NAME "Obj_DistLong"
#define SR439_OBJ_GENERAL_INFO_FL_OBJ_DIST_LAT_NAME "Obj_DistLat"
#define SR439_OBJ_GENERAL_INFO_FL_OBJ_DYN_PROP_NAME "Obj_DynProp"
#define SR439_OBJ_GENERAL_INFO_FL_OBJ_VREL_LONG_NAME "Obj_VrelLong"
#define SR439_OBJ_GENERAL_INFO_FL_OBJ_VREL_LAT_NAME "Obj_VrelLat"
#define SR439_OBJ_EXTENDED_INFO_RR_OBJ_ID_NAME "OBJ_ID"
#define SR439_OBJ_EXTENDED_INFO_RR_OBJ_AREL_LON_NAME "Obj_ArelLon"
#define SR439_OBJ_EXTENDED_INFO_RR_OBJ_AREL_LAT_NAME "Obj_ArelLat"
#define SR439_OBJ_EXTENDED_INFO_RR_OBJ_CLASS_NAME "Obj_Class"
#define SR439_OBJ_EXTENDED_INFO_RR_OBJ_ORIEN_ANGLE_NAME "Obj_OrienAngle"
#define SR439_OBJ_EXTENDED_INFO_RR_OBJ_WIDTH_NAME "Obj_Width"
#define SR439_OBJ_EXTENDED_INFO_RR_OBJ_LENGTH_NAME "Obj_Length"
#define SR439_OBJ_EXTENDED_INFO_RR_OBJ_HEIGHT_NAME "Obj_Height"
#define SR439_OBJ_EXTENDED_INFO_FR_OBJ_ID_NAME "OBJ_ID"
#define SR439_OBJ_EXTENDED_INFO_FR_OBJ_AREL_LON_NAME "Obj_ArelLon"
#define SR439_OBJ_EXTENDED_INFO_FR_OBJ_AREL_LAT_NAME "Obj_ArelLat"
#define SR439_OBJ_EXTENDED_INFO_FR_OBJ_CLASS_NAME "Obj_Class"
#define SR439_OBJ_EXTENDED_INFO_FR_OBJ_ORIEN_ANGLE_NAME "Obj_OrienAngle"
#define SR439_OBJ_EXTENDED_INFO_FR_OBJ_WIDTH_NAME "Obj_Width"
#define SR439_OBJ_EXTENDED_INFO_FR_OBJ_LENGTH_NAME "Obj_Length"
#define SR439_OBJ_EXTENDED_INFO_FR_OBJ_HEIGHT_NAME "Obj_Height"
#define SR439_OBJ_EXTENDED_INFO_FL_OBJ_ID_NAME "OBJ_ID"
#define SR439_OBJ_EXTENDED_INFO_FL_OBJ_AREL_LON_NAME "Obj_ArelLon"
#define SR439_OBJ_EXTENDED_INFO_FL_OBJ_AREL_LAT_NAME "Obj_ArelLat"
#define SR439_OBJ_EXTENDED_INFO_FL_OBJ_CLASS_NAME "Obj_Class"
#define SR439_OBJ_EXTENDED_INFO_FL_OBJ_ORIEN_ANGLE_NAME "Obj_OrienAngle"
#define SR439_OBJ_EXTENDED_INFO_FL_OBJ_WIDTH_NAME "Obj_Width"
#define SR439_OBJ_EXTENDED_INFO_FL_OBJ_LENGTH_NAME "Obj_Length"
#define SR439_OBJ_EXTENDED_INFO_FL_OBJ_HEIGHT_NAME "Obj_Height"
#define SR439_OBJ_COLLISION_INFO_RR_OBJ_ID_NAME "OBJ_ID"
#define SR439_OBJ_COLLISION_INFO_RR_OBJ_REF_POINT_NAME "Obj_RefPoint"
#define SR439_OBJ_COLLISION_INFO_RR_OBJ_TRACK_STATE_NAME "Obj_TrackState"
#define SR439_OBJ_COLLISION_INFO_RR_OBJ_CORNER_REL_WID_NAME "Obj_CornerRelWid"
#define SR439_OBJ_COLLISION_INFO_RR_OBJ_CORNER_REL_LEN_NAME "Obj_CornerRelLen"
#define SR439_OBJ_COLLISION_INFO_RR_OBJ_YAW_RATE_NAME "Obj_YawRate"
#define SR439_OBJ_COLLISION_INFO_FR_OBJ_ID_NAME "OBJ_ID"
#define SR439_OBJ_COLLISION_INFO_FR_OBJ_REF_POINT_NAME "Obj_RefPoint"
#define SR439_OBJ_COLLISION_INFO_FR_OBJ_TRACK_STATE_NAME "Obj_TrackState"
#define SR439_OBJ_COLLISION_INFO_FR_OBJ_CORNER_REL_WID_NAME "Obj_CornerRelWid"
#define SR439_OBJ_COLLISION_INFO_FR_OBJ_CORNER_REL_LEN_NAME "Obj_CornerRelLen"
#define SR439_OBJ_COLLISION_INFO_FR_OBJ_YAW_RATE_NAME "Obj_YawRate"
#define SR439_OBJ_COLLISION_INFO_FL_OBJ_ID_NAME "OBJ_ID"
#define SR439_OBJ_COLLISION_INFO_FL_OBJ_REF_POINT_NAME "Obj_RefPoint"
#define SR439_OBJ_COLLISION_INFO_FL_OBJ_TRACK_STATE_NAME "Obj_TrackState"
#define SR439_OBJ_COLLISION_INFO_FL_OBJ_CORNER_REL_WID_NAME "Obj_CornerRelWid"
#define SR439_OBJ_COLLISION_INFO_FL_OBJ_CORNER_REL_LEN_NAME "Obj_CornerRelLen"
#define SR439_OBJ_COLLISION_INFO_FL_OBJ_YAW_RATE_NAME "Obj_YawRate"
#define SR439_OBJ_0_STATUS_RR_OBJ_NOF_OBJECT_NAME "Obj_NofObject"
#define SR439_OBJ_0_STATUS_RR_OBJ_MEAS_COUNTER_NAME "Obj_MeasCounter"
#define SR439_OBJ_0_STATUS_RR_OBJ_INTERFACE_VERSION_NAME "Obj_InterfaceVersion"
#define SR439_OBJ_0_STATUS_RR_OBJ_BSD_WARNING_NAME "Obj_BSDWarning"
#define SR439_OBJ_0_STATUS_RR_OBJ_LCA_WARNING_NAME "Obj_LCAWarning"
#define SR439_OBJ_0_STATUS_RR_OBJ_DOW_WARNING_NAME "Obj_DOWWarning"
#define SR439_OBJ_0_STATUS_RR_OBJ_RCTA_WARNING_NAME "Obj_RCTAWarning"
#define SR439_OBJ_0_STATUS_RR_OBJ_RCTB_WARNING_NAME "Obj_RCTBWarning"
#define SR439_OBJ_0_STATUS_RR_OBJ_FCTA_WARNING_NAME "Obj_FCTAWarning"
#define SR439_OBJ_0_STATUS_RR_OBJ_FCTB_WARNING_NAME "Obj_FCTBWarning"
#define SR439_OBJ_0_STATUS_RR_OBJ_CIPVID_NAME "Obj_CIPVID"
#define SR439_OBJ_0_STATUS_FR_OBJ_NOF_OBJECT_NAME "Obj_NofObject"
#define SR439_OBJ_0_STATUS_FR_OBJ_MEAS_COUNTER_NAME "Obj_MeasCounter"
#define SR439_OBJ_0_STATUS_FR_OBJ_INTERFACE_VERSION_NAME "Obj_InterfaceVersion"
#define SR439_OBJ_0_STATUS_FR_OBJ_BSD_WARNING_NAME "Obj_BSDWarning"
#define SR439_OBJ_0_STATUS_FR_OBJ_LCA_WARNING_NAME "Obj_LCAWarning"
#define SR439_OBJ_0_STATUS_FR_OBJ_DOW_WARNING_NAME "Obj_DOWWarning"
#define SR439_OBJ_0_STATUS_FR_OBJ_RCTA_WARNING_NAME "Obj_RCTAWarning"
#define SR439_OBJ_0_STATUS_FR_OBJ_RCTB_WARNING_NAME "Obj_RCTBWarning"
#define SR439_OBJ_0_STATUS_FR_OBJ_FCTA_WARNING_NAME "Obj_FCTAWarning"
#define SR439_OBJ_0_STATUS_FR_OBJ_FCTB_WARNING_NAME "Obj_FCTBWarning"
#define SR439_OBJ_0_STATUS_FR_OBJ_CIPVID_NAME "Obj_CIPVID"
#define SR439_OBJ_0_STATUS_FL_OBJ_NOF_OBJECT_NAME "Obj_NofObject"
#define SR439_OBJ_0_STATUS_FL_OBJ_MEAS_COUNTER_NAME "Obj_MeasCounter"
#define SR439_OBJ_0_STATUS_FL_OBJ_INTERFACE_VERSION_NAME "Obj_InterfaceVersion"
#define SR439_OBJ_0_STATUS_FL_OBJ_BSD_WARNING_NAME "Obj_BSDWarning"
#define SR439_OBJ_0_STATUS_FL_OBJ_LCA_WARNING_NAME "Obj_LCAWarning"
#define SR439_OBJ_0_STATUS_FL_OBJ_DOW_WARNING_NAME "Obj_DOWWarning"
#define SR439_OBJ_0_STATUS_FL_OBJ_RCTA_WARNING_NAME "Obj_RCTAWarning"
#define SR439_OBJ_0_STATUS_FL_OBJ_RCTB_WARNING_NAME "Obj_RCTBWarning"
#define SR439_OBJ_0_STATUS_FL_OBJ_FCTA_WARNING_NAME "Obj_FCTAWarning"
#define SR439_OBJ_0_STATUS_FL_OBJ_FCTB_WARNING_NAME "Obj_FCTBWarning"
#define SR439_OBJ_0_STATUS_FL_OBJ_CIPVID_NAME "Obj_CIPVID"
#define SR439_CLUSTER_HEADER_RR_CLUSTER_FRAME_TYPE_NAME "Cluster_FrameType"
#define SR439_CLUSTER_HEADER_RR_CLUSTER_FRAME_NUM_NAME "Cluster_FrameNum"
#define SR439_CLUSTER_HEADER_RR_CLUSTER_TARGET_NUMBER_NAME "Cluster_TargetNumber"
#define SR439_CLUSTER_HEADER_RR_CLUSTER_TIMESTAMP_NAME "Cluster_Timestamp"
#define SR439_CLUSTER_HEADER_RR_CLUSTER_RADAR_IDENTIFY_NAME "Cluster_Radar_Identify"
#define SR439_CLUSTER_HEADER_RR_CLUSTER_VEHICLE_SPEED_NAME "Cluster_VehicleSpeed"
#define SR439_CLUSTER_HEADER_RR_CLUSTER_YAW_RATE_NAME "Cluster_YawRate"
#define SR439_CLUSTER_HEADER_RR_CLUSTER_GEAR_ST_NAME "Cluster_GearSt"
#define SR439_CLUSTER_HEADER_FR_CLUSTER_FRAME_TYPE_NAME "Cluster_FrameType"
#define SR439_CLUSTER_HEADER_FR_CLUSTER_FRAME_NUM_NAME "Cluster_FrameNum"
#define SR439_CLUSTER_HEADER_FR_CLUSTER_TARGET_NUMBER_NAME "Cluster_TargetNumber"
#define SR439_CLUSTER_HEADER_FR_CLUSTER_TIMESTAMP_NAME "Cluster_Timestamp"
#define SR439_CLUSTER_HEADER_FR_CLUSTER_RADAR_IDENTIFY_NAME "Cluster_Radar_Identify"
#define SR439_CLUSTER_HEADER_FR_CLUSTER_VEHICLE_SPEED_NAME "Cluster_VehicleSpeed"
#define SR439_CLUSTER_HEADER_FR_CLUSTER_YAW_RATE_NAME "Cluster_YawRate"
#define SR439_CLUSTER_HEADER_FR_CLUSTER_GEAR_ST_NAME "Cluster_GearSt"
#define SR439_CLUSTER_HEADER_FL_CLUSTER_FRAME_TYPE_NAME "Cluster_FrameType"
#define SR439_CLUSTER_HEADER_FL_CLUSTER_FRAME_NUM_NAME "Cluster_FrameNum"
#define SR439_CLUSTER_HEADER_FL_CLUSTER_TARGET_NUMBER_NAME "Cluster_TargetNumber"
#define SR439_CLUSTER_HEADER_FL_CLUSTER_TIMESTAMP_NAME "Cluster_Timestamp"
#define SR439_CLUSTER_HEADER_FL_CLUSTER_RADAR_IDENTIFY_NAME "Cluster_Radar_Identify"
#define SR439_CLUSTER_HEADER_FL_CLUSTER_VEHICLE_SPEED_NAME "Cluster_VehicleSpeed"
#define SR439_CLUSTER_HEADER_FL_CLUSTER_YAW_RATE_NAME "Cluster_YawRate"
#define SR439_CLUSTER_HEADER_FL_CLUSTER_GEAR_ST_NAME "Cluster_GearSt"
#define SR439_CLUSTER_GENERAL_INFORMATION_RR_CLUSTER_ID_1_NAME "Cluster_ID_1"
#define SR439_CLUSTER_GENERAL_INFORMATION_RR_CLUSTER_RANGE_1_NAME "Cluster_Range_1"
#define SR439_CLUSTER_GENERAL_INFORMATION_RR_CLUSTER_VELOCITY_1_NAME "Cluster_Velocity_1"
#define SR439_CLUSTER_GENERAL_INFORMATION_RR_CLUSTER_AZIMUTH_1_NAME "Cluster_Azimuth_1"
#define SR439_CLUSTER_GENERAL_INFORMATION_RR_CLUSTER_ELEVATION_1_NAME "Cluster_Elevation_1"
#define SR439_CLUSTER_GENERAL_INFORMATION_RR_CLUSTER_DYN_PROP_1_NAME "Cluster_DynProp_1"
#define SR439_CLUSTER_GENERAL_INFORMATION_RR_CLUSTER_PROB_OF_EXIST_1_NAME "Cluster_ProbOfExist_1"
#define SR439_CLUSTER_GENERAL_INFORMATION_RR_CLUSTER_RCS_1_NAME "Cluster_RCS_1"
#define SR439_CLUSTER_GENERAL_INFORMATION_RR_CLUSTER_POWER_1_NAME "Cluster_Power_1"
#define SR439_CLUSTER_GENERAL_INFORMATION_RR_CLUSTER_SNR_1_NAME "Cluster_SNR_1"
#define SR439_CLUSTER_GENERAL_INFORMATION_RR_CLUSTER_ID_2_NAME "Cluster_ID_2"
#define SR439_CLUSTER_GENERAL_INFORMATION_RR_CLUSTER_RANGE_2_NAME "Cluster_Range_2"
#define SR439_CLUSTER_GENERAL_INFORMATION_RR_CLUSTER_VELOCITY_2_NAME "Cluster_Velocity_2"
#define SR439_CLUSTER_GENERAL_INFORMATION_RR_CLUSTER_AZIMUTH_2_NAME "Cluster_Azimuth_2"
#define SR439_CLUSTER_GENERAL_INFORMATION_RR_CLUSTER_ELEVATION_2_NAME "Cluster_Elevation_2"
#define SR439_CLUSTER_GENERAL_INFORMATION_RR_CLUSTER_DYN_PROP_2_NAME "Cluster_DynProp_2"
#define SR439_CLUSTER_GENERAL_INFORMATION_RR_CLUSTER_PROB_OF_EXIST_2_NAME "Cluster_ProbOfExist_2"
#define SR439_CLUSTER_GENERAL_INFORMATION_RR_CLUSTER_RCS_2_NAME "Cluster_RCS_2"
#define SR439_CLUSTER_GENERAL_INFORMATION_RR_CLUSTER_POWER_2_NAME "Cluster_Power_2"
#define SR439_CLUSTER_GENERAL_INFORMATION_RR_CLUSTER_SNR_2_NAME "Cluster_SNR_2"
#define SR439_CLUSTER_GENERAL_INFORMATION_RR_CLUSTER_ID_3_NAME "Cluster_ID_3"
#define SR439_CLUSTER_GENERAL_INFORMATION_RR_CLUSTER_RANGE_3_NAME "Cluster_Range_3"
#define SR439_CLUSTER_GENERAL_INFORMATION_RR_CLUSTER_VELOCITY_3_NAME "Cluster_Velocity_3"
#define SR439_CLUSTER_GENERAL_INFORMATION_RR_CLUSTER_AZIMUTH_3_NAME "Cluster_Azimuth_3"
#define SR439_CLUSTER_GENERAL_INFORMATION_RR_CLUSTER_ELEVATION_3_NAME "Cluster_Elevation_3"
#define SR439_CLUSTER_GENERAL_INFORMATION_RR_CLUSTER_DYN_PROP_3_NAME "Cluster_DynProp_3"
#define SR439_CLUSTER_GENERAL_INFORMATION_RR_CLUSTER_PROB_OF_EXIST_3_NAME "Cluster_ProbOfExist_3"
#define SR439_CLUSTER_GENERAL_INFORMATION_RR_CLUSTER_RCS_3_NAME "Cluster_RCS_3"
#define SR439_CLUSTER_GENERAL_INFORMATION_RR_CLUSTER_POWER_3_NAME "Cluster_Power_3"
#define SR439_CLUSTER_GENERAL_INFORMATION_RR_CLUSTER_SNR_3_NAME "Cluster_SNR_3"
#define SR439_CLUSTER_GENERAL_INFORMATION_RR_CLUSTER_ID_4_NAME "Cluster_ID_4"
#define SR439_CLUSTER_GENERAL_INFORMATION_RR_CLUSTER_RANGE_4_NAME "Cluster_Range_4"
#define SR439_CLUSTER_GENERAL_INFORMATION_RR_CLUSTER_VELOCITY_4_NAME "Cluster_Velocity_4"
#define SR439_CLUSTER_GENERAL_INFORMATION_RR_CLUSTER_AZIMUTH_4_NAME "Cluster_Azimuth_4"
#define SR439_CLUSTER_GENERAL_INFORMATION_RR_CLUSTER_ELEVATION_4_NAME "Cluster_Elevation_4"
#define SR439_CLUSTER_GENERAL_INFORMATION_RR_CLUSTER_DYN_PROP_4_NAME "Cluster_DynProp_4"
#define SR439_CLUSTER_GENERAL_INFORMATION_RR_CLUSTER_PROB_OF_EXIST_4_NAME "Cluster_ProbOfExist_4"
#define SR439_CLUSTER_GENERAL_INFORMATION_RR_CLUSTER_RCS_4_NAME "Cluster_RCS_4"
#define SR439_CLUSTER_GENERAL_INFORMATION_RR_CLUSTER_POWER_4_NAME "Cluster_Power_4"
#define SR439_CLUSTER_GENERAL_INFORMATION_RR_CLUSTER_SNR_4_NAME "Cluster_SNR_4"
#define SR439_CLUSTER_GENERAL_INFORMATION_RR_CLUSTER_ID_5_NAME "Cluster_ID_5"
#define SR439_CLUSTER_GENERAL_INFORMATION_RR_CLUSTER_RANGE_5_NAME "Cluster_Range_5"
#define SR439_CLUSTER_GENERAL_INFORMATION_RR_CLUSTER_VELOCITY_5_NAME "Cluster_Velocity_5"
#define SR439_CLUSTER_GENERAL_INFORMATION_RR_CLUSTER_AZIMUTH_5_NAME "Cluster_Azimuth_5"
#define SR439_CLUSTER_GENERAL_INFORMATION_RR_CLUSTER_ELEVATION_5_NAME "Cluster_Elevation_5"
#define SR439_CLUSTER_GENERAL_INFORMATION_RR_CLUSTER_DYN_PROP_5_NAME "Cluster_DynProp_5"
#define SR439_CLUSTER_GENERAL_INFORMATION_RR_CLUSTER_PROB_OF_EXIST_5_NAME "Cluster_ProbOfExist_5"
#define SR439_CLUSTER_GENERAL_INFORMATION_RR_CLUSTER_RCS_5_NAME "Cluster_RCS_5"
#define SR439_CLUSTER_GENERAL_INFORMATION_RR_CLUSTER_POWER_5_NAME "Cluster_Power_5"
#define SR439_CLUSTER_GENERAL_INFORMATION_RR_CLUSTER_SNR_5_NAME "Cluster_SNR_5"
#define SR439_CLUSTER_GENERAL_INFORMATION_FR_CLUSTER_ID_1_NAME "Cluster_ID_1"
#define SR439_CLUSTER_GENERAL_INFORMATION_FR_CLUSTER_RANGE_1_NAME "Cluster_Range_1"
#define SR439_CLUSTER_GENERAL_INFORMATION_FR_CLUSTER_VELOCITY_1_NAME "Cluster_Velocity_1"
#define SR439_CLUSTER_GENERAL_INFORMATION_FR_CLUSTER_AZIMUTH_1_NAME "Cluster_Azimuth_1"
#define SR439_CLUSTER_GENERAL_INFORMATION_FR_CLUSTER_ELEVATION_1_NAME "Cluster_Elevation_1"
#define SR439_CLUSTER_GENERAL_INFORMATION_FR_CLUSTER_DYN_PROP_1_NAME "Cluster_DynProp_1"
#define SR439_CLUSTER_GENERAL_INFORMATION_FR_CLUSTER_PROB_OF_EXIST_1_NAME "Cluster_ProbOfExist_1"
#define SR439_CLUSTER_GENERAL_INFORMATION_FR_CLUSTER_RCS_1_NAME "Cluster_RCS_1"
#define SR439_CLUSTER_GENERAL_INFORMATION_FR_CLUSTER_POWER_1_NAME "Cluster_Power_1"
#define SR439_CLUSTER_GENERAL_INFORMATION_FR_CLUSTER_SNR_1_NAME "Cluster_SNR_1"
#define SR439_CLUSTER_GENERAL_INFORMATION_FR_CLUSTER_ID_2_NAME "Cluster_ID_2"
#define SR439_CLUSTER_GENERAL_INFORMATION_FR_CLUSTER_RANGE_2_NAME "Cluster_Range_2"
#define SR439_CLUSTER_GENERAL_INFORMATION_FR_CLUSTER_VELOCITY_2_NAME "Cluster_Velocity_2"
#define SR439_CLUSTER_GENERAL_INFORMATION_FR_CLUSTER_AZIMUTH_2_NAME "Cluster_Azimuth_2"
#define SR439_CLUSTER_GENERAL_INFORMATION_FR_CLUSTER_ELEVATION_2_NAME "Cluster_Elevation_2"
#define SR439_CLUSTER_GENERAL_INFORMATION_FR_CLUSTER_DYN_PROP_2_NAME "Cluster_DynProp_2"
#define SR439_CLUSTER_GENERAL_INFORMATION_FR_CLUSTER_PROB_OF_EXIST_2_NAME "Cluster_ProbOfExist_2"
#define SR439_CLUSTER_GENERAL_INFORMATION_FR_CLUSTER_RCS_2_NAME "Cluster_RCS_2"
#define SR439_CLUSTER_GENERAL_INFORMATION_FR_CLUSTER_POWER_2_NAME "Cluster_Power_2"
#define SR439_CLUSTER_GENERAL_INFORMATION_FR_CLUSTER_SNR_2_NAME "Cluster_SNR_2"
#define SR439_CLUSTER_GENERAL_INFORMATION_FR_CLUSTER_ID_3_NAME "Cluster_ID_3"
#define SR439_CLUSTER_GENERAL_INFORMATION_FR_CLUSTER_RANGE_3_NAME "Cluster_Range_3"
#define SR439_CLUSTER_GENERAL_INFORMATION_FR_CLUSTER_VELOCITY_3_NAME "Cluster_Velocity_3"
#define SR439_CLUSTER_GENERAL_INFORMATION_FR_CLUSTER_AZIMUTH_3_NAME "Cluster_Azimuth_3"
#define SR439_CLUSTER_GENERAL_INFORMATION_FR_CLUSTER_ELEVATION_3_NAME "Cluster_Elevation_3"
#define SR439_CLUSTER_GENERAL_INFORMATION_FR_CLUSTER_DYN_PROP_3_NAME "Cluster_DynProp_3"
#define SR439_CLUSTER_GENERAL_INFORMATION_FR_CLUSTER_PROB_OF_EXIST_3_NAME "Cluster_ProbOfExist_3"
#define SR439_CLUSTER_GENERAL_INFORMATION_FR_CLUSTER_RCS_3_NAME "Cluster_RCS_3"
#define SR439_CLUSTER_GENERAL_INFORMATION_FR_CLUSTER_POWER_3_NAME "Cluster_Power_3"
#define SR439_CLUSTER_GENERAL_INFORMATION_FR_CLUSTER_SNR_3_NAME "Cluster_SNR_3"
#define SR439_CLUSTER_GENERAL_INFORMATION_FR_CLUSTER_ID_4_NAME "Cluster_ID_4"
#define SR439_CLUSTER_GENERAL_INFORMATION_FR_CLUSTER_RANGE_4_NAME "Cluster_Range_4"
#define SR439_CLUSTER_GENERAL_INFORMATION_FR_CLUSTER_VELOCITY_4_NAME "Cluster_Velocity_4"
#define SR439_CLUSTER_GENERAL_INFORMATION_FR_CLUSTER_AZIMUTH_4_NAME "Cluster_Azimuth_4"
#define SR439_CLUSTER_GENERAL_INFORMATION_FR_CLUSTER_ELEVATION_4_NAME "Cluster_Elevation_4"
#define SR439_CLUSTER_GENERAL_INFORMATION_FR_CLUSTER_DYN_PROP_4_NAME "Cluster_DynProp_4"
#define SR439_CLUSTER_GENERAL_INFORMATION_FR_CLUSTER_PROB_OF_EXIST_4_NAME "Cluster_ProbOfExist_4"
#define SR439_CLUSTER_GENERAL_INFORMATION_FR_CLUSTER_RCS_4_NAME "Cluster_RCS_4"
#define SR439_CLUSTER_GENERAL_INFORMATION_FR_CLUSTER_POWER_4_NAME "Cluster_Power_4"
#define SR439_CLUSTER_GENERAL_INFORMATION_FR_CLUSTER_SNR_4_NAME "Cluster_SNR_4"
#define SR439_CLUSTER_GENERAL_INFORMATION_FR_CLUSTER_ID_5_NAME "Cluster_ID_5"
#define SR439_CLUSTER_GENERAL_INFORMATION_FR_CLUSTER_RANGE_5_NAME "Cluster_Range_5"
#define SR439_CLUSTER_GENERAL_INFORMATION_FR_CLUSTER_VELOCITY_5_NAME "Cluster_Velocity_5"
#define SR439_CLUSTER_GENERAL_INFORMATION_FR_CLUSTER_AZIMUTH_5_NAME "Cluster_Azimuth_5"
#define SR439_CLUSTER_GENERAL_INFORMATION_FR_CLUSTER_ELEVATION_5_NAME "Cluster_Elevation_5"
#define SR439_CLUSTER_GENERAL_INFORMATION_FR_CLUSTER_DYN_PROP_5_NAME "Cluster_DynProp_5"
#define SR439_CLUSTER_GENERAL_INFORMATION_FR_CLUSTER_PROB_OF_EXIST_5_NAME "Cluster_ProbOfExist_5"
#define SR439_CLUSTER_GENERAL_INFORMATION_FR_CLUSTER_RCS_5_NAME "Cluster_RCS_5"
#define SR439_CLUSTER_GENERAL_INFORMATION_FR_CLUSTER_POWER_5_NAME "Cluster_Power_5"
#define SR439_CLUSTER_GENERAL_INFORMATION_FR_CLUSTER_SNR_5_NAME "Cluster_SNR_5"
#define SR439_CLUSTER_GENERAL_INFORMATION_FL_CLUSTER_ID_1_NAME "Cluster_ID_1"
#define SR439_CLUSTER_GENERAL_INFORMATION_FL_CLUSTER_RANGE_1_NAME "Cluster_Range_1"
#define SR439_CLUSTER_GENERAL_INFORMATION_FL_CLUSTER_VELOCITY_1_NAME "Cluster_Velocity_1"
#define SR439_CLUSTER_GENERAL_INFORMATION_FL_CLUSTER_AZIMUTH_1_NAME "Cluster_Azimuth_1"
#define SR439_CLUSTER_GENERAL_INFORMATION_FL_CLUSTER_ELEVATION_1_NAME "Cluster_Elevation_1"
#define SR439_CLUSTER_GENERAL_INFORMATION_FL_CLUSTER_DYN_PROP_1_NAME "Cluster_DynProp_1"
#define SR439_CLUSTER_GENERAL_INFORMATION_FL_CLUSTER_PROB_OF_EXIST_1_NAME "Cluster_ProbOfExist_1"
#define SR439_CLUSTER_GENERAL_INFORMATION_FL_CLUSTER_RCS_1_NAME "Cluster_RCS_1"
#define SR439_CLUSTER_GENERAL_INFORMATION_FL_CLUSTER_POWER_1_NAME "Cluster_Power_1"
#define SR439_CLUSTER_GENERAL_INFORMATION_FL_CLUSTER_SNR_1_NAME "Cluster_SNR_1"
#define SR439_CLUSTER_GENERAL_INFORMATION_FL_CLUSTER_ID_2_NAME "Cluster_ID_2"
#define SR439_CLUSTER_GENERAL_INFORMATION_FL_CLUSTER_RANGE_2_NAME "Cluster_Range_2"
#define SR439_CLUSTER_GENERAL_INFORMATION_FL_CLUSTER_VELOCITY_2_NAME "Cluster_Velocity_2"
#define SR439_CLUSTER_GENERAL_INFORMATION_FL_CLUSTER_AZIMUTH_2_NAME "Cluster_Azimuth_2"
#define SR439_CLUSTER_GENERAL_INFORMATION_FL_CLUSTER_ELEVATION_2_NAME "Cluster_Elevation_2"
#define SR439_CLUSTER_GENERAL_INFORMATION_FL_CLUSTER_DYN_PROP_2_NAME "Cluster_DynProp_2"
#define SR439_CLUSTER_GENERAL_INFORMATION_FL_CLUSTER_PROB_OF_EXIST_2_NAME "Cluster_ProbOfExist_2"
#define SR439_CLUSTER_GENERAL_INFORMATION_FL_CLUSTER_RCS_2_NAME "Cluster_RCS_2"
#define SR439_CLUSTER_GENERAL_INFORMATION_FL_CLUSTER_POWER_2_NAME "Cluster_Power_2"
#define SR439_CLUSTER_GENERAL_INFORMATION_FL_CLUSTER_SNR_2_NAME "Cluster_SNR_2"
#define SR439_CLUSTER_GENERAL_INFORMATION_FL_CLUSTER_ID_3_NAME "Cluster_ID_3"
#define SR439_CLUSTER_GENERAL_INFORMATION_FL_CLUSTER_RANGE_3_NAME "Cluster_Range_3"
#define SR439_CLUSTER_GENERAL_INFORMATION_FL_CLUSTER_VELOCITY_3_NAME "Cluster_Velocity_3"
#define SR439_CLUSTER_GENERAL_INFORMATION_FL_CLUSTER_AZIMUTH_3_NAME "Cluster_Azimuth_3"
#define SR439_CLUSTER_GENERAL_INFORMATION_FL_CLUSTER_ELEVATION_3_NAME "Cluster_Elevation_3"
#define SR439_CLUSTER_GENERAL_INFORMATION_FL_CLUSTER_DYN_PROP_3_NAME "Cluster_DynProp_3"
#define SR439_CLUSTER_GENERAL_INFORMATION_FL_CLUSTER_PROB_OF_EXIST_3_NAME "Cluster_ProbOfExist_3"
#define SR439_CLUSTER_GENERAL_INFORMATION_FL_CLUSTER_RCS_3_NAME "Cluster_RCS_3"
#define SR439_CLUSTER_GENERAL_INFORMATION_FL_CLUSTER_POWER_3_NAME "Cluster_Power_3"
#define SR439_CLUSTER_GENERAL_INFORMATION_FL_CLUSTER_SNR_3_NAME "Cluster_SNR_3"
#define SR439_CLUSTER_GENERAL_INFORMATION_FL_CLUSTER_ID_4_NAME "Cluster_ID_4"
#define SR439_CLUSTER_GENERAL_INFORMATION_FL_CLUSTER_RANGE_4_NAME "Cluster_Range_4"
#define SR439_CLUSTER_GENERAL_INFORMATION_FL_CLUSTER_VELOCITY_4_NAME "Cluster_Velocity_4"
#define SR439_CLUSTER_GENERAL_INFORMATION_FL_CLUSTER_AZIMUTH_4_NAME "Cluster_Azimuth_4"
#define SR439_CLUSTER_GENERAL_INFORMATION_FL_CLUSTER_ELEVATION_4_NAME "Cluster_Elevation_4"
#define SR439_CLUSTER_GENERAL_INFORMATION_FL_CLUSTER_DYN_PROP_4_NAME "Cluster_DynProp_4"
#define SR439_CLUSTER_GENERAL_INFORMATION_FL_CLUSTER_PROB_OF_EXIST_4_NAME "Cluster_ProbOfExist_4"
#define SR439_CLUSTER_GENERAL_INFORMATION_FL_CLUSTER_RCS_4_NAME "Cluster_RCS_4"
#define SR439_CLUSTER_GENERAL_INFORMATION_FL_CLUSTER_POWER_4_NAME "Cluster_Power_4"
#define SR439_CLUSTER_GENERAL_INFORMATION_FL_CLUSTER_SNR_4_NAME "Cluster_SNR_4"
#define SR439_CLUSTER_GENERAL_INFORMATION_FL_CLUSTER_ID_5_NAME "Cluster_ID_5"
#define SR439_CLUSTER_GENERAL_INFORMATION_FL_CLUSTER_RANGE_5_NAME "Cluster_Range_5"
#define SR439_CLUSTER_GENERAL_INFORMATION_FL_CLUSTER_VELOCITY_5_NAME "Cluster_Velocity_5"
#define SR439_CLUSTER_GENERAL_INFORMATION_FL_CLUSTER_AZIMUTH_5_NAME "Cluster_Azimuth_5"
#define SR439_CLUSTER_GENERAL_INFORMATION_FL_CLUSTER_ELEVATION_5_NAME "Cluster_Elevation_5"
#define SR439_CLUSTER_GENERAL_INFORMATION_FL_CLUSTER_DYN_PROP_5_NAME "Cluster_DynProp_5"
#define SR439_CLUSTER_GENERAL_INFORMATION_FL_CLUSTER_PROB_OF_EXIST_5_NAME "Cluster_ProbOfExist_5"
#define SR439_CLUSTER_GENERAL_INFORMATION_FL_CLUSTER_RCS_5_NAME "Cluster_RCS_5"
#define SR439_CLUSTER_GENERAL_INFORMATION_FL_CLUSTER_POWER_5_NAME "Cluster_Power_5"
#define SR439_CLUSTER_GENERAL_INFORMATION_FL_CLUSTER_SNR_5_NAME "Cluster_SNR_5"
#define SR439_OBJ_COLLISION_INFO_RL_OBJ_ID_NAME "OBJ_ID"
#define SR439_OBJ_COLLISION_INFO_RL_OBJ_REF_POINT_NAME "Obj_RefPoint"
#define SR439_OBJ_COLLISION_INFO_RL_OBJ_TRACK_STATE_NAME "Obj_TrackState"
#define SR439_OBJ_COLLISION_INFO_RL_OBJ_CORNER_REL_WID_NAME "Obj_CornerRelWid"
#define SR439_OBJ_COLLISION_INFO_RL_OBJ_CORNER_REL_LEN_NAME "Obj_CornerRelLen"
#define SR439_OBJ_COLLISION_INFO_RL_OBJ_YAW_RATE_NAME "Obj_YawRate"
#define SR439_OBJ_EXTENDED_INFO_RL_OBJ_ID_NAME "OBJ_ID"
#define SR439_OBJ_EXTENDED_INFO_RL_OBJ_AREL_LON_NAME "Obj_ArelLon"
#define SR439_OBJ_EXTENDED_INFO_RL_OBJ_AREL_LAT_NAME "Obj_ArelLat"
#define SR439_OBJ_EXTENDED_INFO_RL_OBJ_CLASS_NAME "Obj_Class"
#define SR439_OBJ_EXTENDED_INFO_RL_OBJ_ORIEN_ANGLE_NAME "Obj_OrienAngle"
#define SR439_OBJ_EXTENDED_INFO_RL_OBJ_WIDTH_NAME "Obj_Width"
#define SR439_OBJ_EXTENDED_INFO_RL_OBJ_LENGTH_NAME "Obj_Length"
#define SR439_OBJ_EXTENDED_INFO_RL_OBJ_HEIGHT_NAME "Obj_Height"
#define SR439_OBJ_QUALITY_INFO_RL_OBJ_ID_NAME "OBJ_ID"
#define SR439_OBJ_QUALITY_INFO_RL_OBJ_DIST_LON_RMS_NAME "Obj_DistLonRMS"
#define SR439_OBJ_QUALITY_INFO_RL_OBJ_DIST_LAT_RMS_NAME "Obj_DistLatRMS"
#define SR439_OBJ_QUALITY_INFO_RL_OBJ_VEL_LON_RMS_NAME "Obj_VelLonRMS"
#define SR439_OBJ_QUALITY_INFO_RL_OBJ_VEL_LAT_RMS_NAME "Obj_VelLatRMS"
#define SR439_OBJ_QUALITY_INFO_RL_OBJ_ACC_LON_RMS_NAME "Obj_AccLonRMS"
#define SR439_OBJ_QUALITY_INFO_RL_OBJ_ACC_LAT_RMS_NAME "Obj_AccLatRMS"
#define SR439_OBJ_QUALITY_INFO_RL_OBJ_CIPV_NAME "Obj_CIPV"
#define SR439_OBJ_QUALITY_INFO_RL_OBJ_PROB_OF_CLASS_NAME "Obj_ProbOfClass"
#define SR439_OBJ_QUALITY_INFO_RL_OBJ_PROB_OF_EXIST_NAME "Obj_ProbOfExist"
#define SR439_OBJ_QUALITY_INFO_RL_OBJ_MEAS_STATE_NAME "Obj_MeasState"
#define SR439_RADAR_REAR_ADAS_ADAS_BSD_L_FLG_NAME "ADAS_BSD_L_FLG"
#define SR439_RADAR_REAR_ADAS_ADAS_BSD_R_FLG_NAME "ADAS_BSD_R_FLG"
#define SR439_RADAR_REAR_ADAS_ADAS_DOW_L_FLG_NAME "ADAS_DOW_L_FLG"
#define SR439_RADAR_REAR_ADAS_ADAS_DOW_R_FLG_NAME "ADAS_DOW_R_FLG"
#define SR439_RADAR_REAR_ADAS_ADAS_LCA_L_FLG_NAME "ADAS_LCA_L_FLG"
#define SR439_RADAR_REAR_ADAS_ADAS_LCA_R_FLG_NAME "ADAS_LCA_R_FLG"
#define SR439_RADAR_REAR_ADAS_ADAS_RCTA_L_FLG_NAME "ADAS_RCTA_L_FLG"
#define SR439_RADAR_REAR_ADAS_ADAS_RCTA_R_FLG_NAME "ADAS_RCTA_R_FLG"
#define SR439_RADAR_REAR_ADAS_ADAS_RCTB_L_FLG_NAME "ADAS_RCTB_L_FLG"
#define SR439_RADAR_REAR_ADAS_ADAS_RCTB_R_FLG_NAME "ADAS_RCTB_R_FLG"
#define SR439_RADAR_REAR_ADAS_ADAS_FCTA_L_FLG_NAME "ADAS_FCTA_L_FLG"
#define SR439_RADAR_REAR_ADAS_ADAS_FCTA_R_FLG_NAME "ADAS_FCTA_R_FLG"
#define SR439_RADAR_REAR_ADAS_ADAS_FCTB_L_FLG_NAME "ADAS_FCTB_L_FLG"
#define SR439_RADAR_REAR_ADAS_ADAS_FCTB_R_FLG_NAME "ADAS_FCTB_R_FLG"
#define SR439_RADAR_REAR_ADAS_ADAS_FCW_FLG_NAME "ADAS_FCW_FLG"
#define SR439_RADAR_REAR_ADAS_ADAS_RCW_FLG_NAME "ADAS_RCW_FLG"
#define SR439_RADAR_REAR_ADAS_ADAS_BSD_L_W_NAME "ADAS_BSD_L_W"
#define SR439_RADAR_REAR_ADAS_ADAS_BSD_R_W_NAME "ADAS_BSD_R_W"
#define SR439_RADAR_REAR_ADAS_ADAS_LCA_L_W_NAME "ADAS_LCA_L_W"
#define SR439_RADAR_REAR_ADAS_ADAS_LCA_R_W_NAME "ADAS_LCA_R_W"
#define SR439_RADAR_REAR_ADAS_ADAS_DOW_L_W_NAME "ADAS_DOW_L_W"
#define SR439_RADAR_REAR_ADAS_ADAS_DOW_R_W_NAME "ADAS_DOW_R_W"
#define SR439_RADAR_REAR_ADAS_ADAS_RCTA_L_W_NAME "ADAS_RCTA_L_W"
#define SR439_RADAR_REAR_ADAS_ADAS_RCTA_R_W_NAME "ADAS_RCTA_R_W"
#define SR439_RADAR_REAR_ADAS_ADAS_RCTB_L_W_NAME "ADAS_RCTB_L_W"
#define SR439_RADAR_REAR_ADAS_ADAS_RCTB_R_W_NAME "ADAS_RCTB_R_W"
#define SR439_RADAR_REAR_ADAS_ADAS_FCTA_L_W_NAME "ADAS_FCTA_L_W"
#define SR439_RADAR_REAR_ADAS_ADAS_FCTA_R_W_NAME "ADAS_FCTA_R_W"
#define SR439_RADAR_REAR_ADAS_ADAS_FCTB_L_W_NAME "ADAS_FCTB_L_W"
#define SR439_RADAR_REAR_ADAS_ADAS_FCTB_R_W_NAME "ADAS_FCTB_R_W"
#define SR439_RADAR_REAR_ADAS_ADAS_FCW_W_NAME "ADAS_FCW_W"
#define SR439_RADAR_REAR_ADAS_ADAS_RCW_W_NAME "ADAS_RCW_W"
#define SR439_RADAR_REAR_ADAS_ADAS_TIME_DIFF_NAME "ADAS_TimeDiff"
#define SR439_OBJ_GENERAL_INFO_RL_OBJ_ID_NAME "OBJ_ID"
#define SR439_OBJ_GENERAL_INFO_RL_OBJ_DIST_LONG_NAME "Obj_DistLong"
#define SR439_OBJ_GENERAL_INFO_RL_OBJ_DIST_LAT_NAME "Obj_DistLat"
#define SR439_OBJ_GENERAL_INFO_RL_OBJ_DYN_PROP_NAME "Obj_DynProp"
#define SR439_OBJ_GENERAL_INFO_RL_OBJ_VREL_LONG_NAME "Obj_VrelLong"
#define SR439_OBJ_GENERAL_INFO_RL_OBJ_VREL_LAT_NAME "Obj_VrelLat"
#define SR439_OBJ_0_STATUS_RL_OBJ_NOF_OBJECT_NAME "Obj_NofObject"
#define SR439_OBJ_0_STATUS_RL_OBJ_MEAS_COUNTER_NAME "Obj_MeasCounter"
#define SR439_OBJ_0_STATUS_RL_OBJ_INTERFACE_VERSION_NAME "Obj_InterfaceVersion"
#define SR439_OBJ_0_STATUS_RL_OBJ_BSD_WARNING_NAME "Obj_BSDWarning"
#define SR439_OBJ_0_STATUS_RL_OBJ_LCA_WARNING_NAME "Obj_LCAWarning"
#define SR439_OBJ_0_STATUS_RL_OBJ_DOW_WARNING_NAME "Obj_DOWWarning"
#define SR439_OBJ_0_STATUS_RL_OBJ_RCTA_WARNING_NAME "Obj_RCTAWarning"
#define SR439_OBJ_0_STATUS_RL_OBJ_RCTB_WARNING_NAME "Obj_RCTBWarning"
#define SR439_OBJ_0_STATUS_RL_OBJ_FCTA_WARNING_NAME "Obj_FCTAWarning"
#define SR439_OBJ_0_STATUS_RL_OBJ_FCTB_WARNING_NAME "Obj_FCTBWarning"
#define SR439_OBJ_0_STATUS_RL_OBJ_CIPVID_NAME "Obj_CIPVID"
#define SR439_CLUSTER_GENERAL_INFORMATION_RL_CLUSTER_ID_1_NAME "Cluster_ID_1"
#define SR439_CLUSTER_GENERAL_INFORMATION_RL_CLUSTER_RANGE_1_NAME "Cluster_Range_1"
#define SR439_CLUSTER_GENERAL_INFORMATION_RL_CLUSTER_VELOCITY_1_NAME "Cluster_Velocity_1"
#define SR439_CLUSTER_GENERAL_INFORMATION_RL_CLUSTER_AZIMUTH_1_NAME "Cluster_Azimuth_1"
#define SR439_CLUSTER_GENERAL_INFORMATION_RL_CLUSTER_ELEVATION_1_NAME "Cluster_Elevation_1"
#define SR439_CLUSTER_GENERAL_INFORMATION_RL_CLUSTER_DYN_PROP_1_NAME "Cluster_DynProp_1"
#define SR439_CLUSTER_GENERAL_INFORMATION_RL_CLUSTER_PROB_OF_EXIST_1_NAME "Cluster_ProbOfExist_1"
#define SR439_CLUSTER_GENERAL_INFORMATION_RL_CLUSTER_RCS_1_NAME "Cluster_RCS_1"
#define SR439_CLUSTER_GENERAL_INFORMATION_RL_CLUSTER_POWER_1_NAME "Cluster_Power_1"
#define SR439_CLUSTER_GENERAL_INFORMATION_RL_CLUSTER_SNR_1_NAME "Cluster_SNR_1"
#define SR439_CLUSTER_GENERAL_INFORMATION_RL_CLUSTER_ID_2_NAME "Cluster_ID_2"
#define SR439_CLUSTER_GENERAL_INFORMATION_RL_CLUSTER_RANGE_2_NAME "Cluster_Range_2"
#define SR439_CLUSTER_GENERAL_INFORMATION_RL_CLUSTER_VELOCITY_2_NAME "Cluster_Velocity_2"
#define SR439_CLUSTER_GENERAL_INFORMATION_RL_CLUSTER_AZIMUTH_2_NAME "Cluster_Azimuth_2"
#define SR439_CLUSTER_GENERAL_INFORMATION_RL_CLUSTER_ELEVATION_2_NAME "Cluster_Elevation_2"
#define SR439_CLUSTER_GENERAL_INFORMATION_RL_CLUSTER_DYN_PROP_2_NAME "Cluster_DynProp_2"
#define SR439_CLUSTER_GENERAL_INFORMATION_RL_CLUSTER_PROB_OF_EXIST_2_NAME "Cluster_ProbOfExist_2"
#define SR439_CLUSTER_GENERAL_INFORMATION_RL_CLUSTER_RCS_2_NAME "Cluster_RCS_2"
#define SR439_CLUSTER_GENERAL_INFORMATION_RL_CLUSTER_POWER_2_NAME "Cluster_Power_2"
#define SR439_CLUSTER_GENERAL_INFORMATION_RL_CLUSTER_SNR_2_NAME "Cluster_SNR_2"
#define SR439_CLUSTER_GENERAL_INFORMATION_RL_CLUSTER_ID_3_NAME "Cluster_ID_3"
#define SR439_CLUSTER_GENERAL_INFORMATION_RL_CLUSTER_RANGE_3_NAME "Cluster_Range_3"
#define SR439_CLUSTER_GENERAL_INFORMATION_RL_CLUSTER_VELOCITY_3_NAME "Cluster_Velocity_3"
#define SR439_CLUSTER_GENERAL_INFORMATION_RL_CLUSTER_AZIMUTH_3_NAME "Cluster_Azimuth_3"
#define SR439_CLUSTER_GENERAL_INFORMATION_RL_CLUSTER_ELEVATION_3_NAME "Cluster_Elevation_3"
#define SR439_CLUSTER_GENERAL_INFORMATION_RL_CLUSTER_DYN_PROP_3_NAME "Cluster_DynProp_3"
#define SR439_CLUSTER_GENERAL_INFORMATION_RL_CLUSTER_PROB_OF_EXIST_3_NAME "Cluster_ProbOfExist_3"
#define SR439_CLUSTER_GENERAL_INFORMATION_RL_CLUSTER_RCS_3_NAME "Cluster_RCS_3"
#define SR439_CLUSTER_GENERAL_INFORMATION_RL_CLUSTER_POWER_3_NAME "Cluster_Power_3"
#define SR439_CLUSTER_GENERAL_INFORMATION_RL_CLUSTER_SNR_3_NAME "Cluster_SNR_3"
#define SR439_CLUSTER_GENERAL_INFORMATION_RL_CLUSTER_ID_4_NAME "Cluster_ID_4"
#define SR439_CLUSTER_GENERAL_INFORMATION_RL_CLUSTER_RANGE_4_NAME "Cluster_Range_4"
#define SR439_CLUSTER_GENERAL_INFORMATION_RL_CLUSTER_VELOCITY_4_NAME "Cluster_Velocity_4"
#define SR439_CLUSTER_GENERAL_INFORMATION_RL_CLUSTER_AZIMUTH_4_NAME "Cluster_Azimuth_4"
#define SR439_CLUSTER_GENERAL_INFORMATION_RL_CLUSTER_ELEVATION_4_NAME "Cluster_Elevation_4"
#define SR439_CLUSTER_GENERAL_INFORMATION_RL_CLUSTER_DYN_PROP_4_NAME "Cluster_DynProp_4"
#define SR439_CLUSTER_GENERAL_INFORMATION_RL_CLUSTER_PROB_OF_EXIST_4_NAME "Cluster_ProbOfExist_4"
#define SR439_CLUSTER_GENERAL_INFORMATION_RL_CLUSTER_RCS_4_NAME "Cluster_RCS_4"
#define SR439_CLUSTER_GENERAL_INFORMATION_RL_CLUSTER_POWER_4_NAME "Cluster_Power_4"
#define SR439_CLUSTER_GENERAL_INFORMATION_RL_CLUSTER_SNR_4_NAME "Cluster_SNR_4"
#define SR439_CLUSTER_GENERAL_INFORMATION_RL_CLUSTER_ID_5_NAME "Cluster_ID_5"
#define SR439_CLUSTER_GENERAL_INFORMATION_RL_CLUSTER_RANGE_5_NAME "Cluster_Range_5"
#define SR439_CLUSTER_GENERAL_INFORMATION_RL_CLUSTER_VELOCITY_5_NAME "Cluster_Velocity_5"
#define SR439_CLUSTER_GENERAL_INFORMATION_RL_CLUSTER_AZIMUTH_5_NAME "Cluster_Azimuth_5"
#define SR439_CLUSTER_GENERAL_INFORMATION_RL_CLUSTER_ELEVATION_5_NAME "Cluster_Elevation_5"
#define SR439_CLUSTER_GENERAL_INFORMATION_RL_CLUSTER_DYN_PROP_5_NAME "Cluster_DynProp_5"
#define SR439_CLUSTER_GENERAL_INFORMATION_RL_CLUSTER_PROB_OF_EXIST_5_NAME "Cluster_ProbOfExist_5"
#define SR439_CLUSTER_GENERAL_INFORMATION_RL_CLUSTER_RCS_5_NAME "Cluster_RCS_5"
#define SR439_CLUSTER_GENERAL_INFORMATION_RL_CLUSTER_POWER_5_NAME "Cluster_Power_5"
#define SR439_CLUSTER_GENERAL_INFORMATION_RL_CLUSTER_SNR_5_NAME "Cluster_SNR_5"
#define SR439_CLUSTER_HEADER_RL_CLUSTER_FRAME_TYPE_NAME "Cluster_FrameType"
#define SR439_CLUSTER_HEADER_RL_CLUSTER_FRAME_NUM_NAME "Cluster_FrameNum"
#define SR439_CLUSTER_HEADER_RL_CLUSTER_TARGET_NUMBER_NAME "Cluster_TargetNumber"
#define SR439_CLUSTER_HEADER_RL_CLUSTER_TIMESTAMP_NAME "Cluster_Timestamp"
#define SR439_CLUSTER_HEADER_RL_CLUSTER_RADAR_IDENTIFY_NAME "Cluster_Radar_Identify"
#define SR439_CLUSTER_HEADER_RL_CLUSTER_VEHICLE_SPEED_NAME "Cluster_VehicleSpeed"
#define SR439_CLUSTER_HEADER_RL_CLUSTER_YAW_RATE_NAME "Cluster_YawRate"
#define SR439_CLUSTER_HEADER_RL_CLUSTER_GEAR_ST_NAME "Cluster_GearSt"

/**
 * Signals in message VehInfo2.
 *
 * All signal values are as on the CAN bus.
 */
struct sr439_veh_info2_t {
    /**
     * Range: 0..7 (0..7 -)
     * Scale: 1
     * Offset: 0
     */
    uint8_t gear_state_now;

    /**
     * Range: 0..1 (0..1 -)
     * Scale: 1
     * Offset: 0
     */
    uint8_t gear_sta_now_v;

    /**
     * Range: 0..1 (0..1 -)
     * Scale: 1
     * Offset: 0
     */
    uint8_t ign_state_v;

    /**
     * Range: 0..1 (0..1 -)
     * Scale: 1
     * Offset: 0
     */
    uint8_t ign_state;
};

/**
 * Signals in message VehInfo1.
 *
 * All signal values are as on the CAN bus.
 */
struct sr439_veh_info1_t {
    /**
     * Range: 0..1 (0..1 -)
     * Scale: 1
     * Offset: 0
     */
    uint8_t veh_speed_v;

    /**
     * Range: 0..1 (0..1 -)
     * Scale: 1
     * Offset: 0
     */
    uint8_t yaw_rat_v;

    /**
     * Range: 0..1 (0..1 -)
     * Scale: 1
     * Offset: 0
     */
    uint8_t str_angle_v;

    /**
     * Range: 0..5333 (0..299.9813 km/h)
     * Scale: 0.05625
     * Offset: 0
     */
    uint16_t veh_speed_in;

    /**
     * Range: 0..17442 (-2.093..2.093 rad/s)
     * Scale: 0.00024
     * Offset: -2.093
     */
    uint16_t yaw_rate_in;

    /**
     * Range: 0..18000 (-900..900 deg)
     * Scale: 0.1
     * Offset: -900
     */
    uint16_t str_angle;
};

/**
 * Signals in message VehInfo_Radar1.
 *
 * All signal values are as on the CAN bus.
 */
struct sr439_veh_info_radar1_t {
    /**
     * Range: 0..18000 (-900..900 deg)
     * Scale: 0.1
     * Offset: -900
     */
    uint16_t steer_angle;

    /**
     * Range: 0..7 (0..7 -)
     * Scale: 1
     * Offset: 0
     */
    uint8_t gear_sts;

    /**
     * Range: 0..5333 (0..299.9813 km/h)
     * Scale: 0.05625
     * Offset: 0
     */
    uint16_t veh_speed;

    /**
     * Range: 0..17442 (-2.093..2.093 g)
     * Scale: 0.00024
     * Offset: -2.093
     */
    uint16_t yaw_rate_raw;
};

/**
 * Signals in message VehInfo_Radar2.
 *
 * All signal values are as on the CAN bus.
 */
struct sr439_veh_info_radar2_t {
    /**
     * Range: 0..18000 (-900..900 deg)
     * Scale: 0.1
     * Offset: -900
     */
    uint16_t steer_angle;

    /**
     * Range: 0..7 (0..7 -)
     * Scale: 1
     * Offset: 0
     */
    uint8_t gear_sts;

    /**
     * Range: 0..5333 (0..299.9813 km/h)
     * Scale: 0.05625
     * Offset: 0
     */
    uint16_t veh_speed;

    /**
     * Range: 0..17442 (-2.093..2.093 g)
     * Scale: 0.00024
     * Offset: -2.093
     */
    uint16_t yaw_rate_raw;
};

/**
 * Signals in message changcheng_Test_State.
 *
 * All signal values are as on the CAN bus.
 */
struct sr439_changcheng_test_state_t {
    /**
     * Range: -
     * Scale: 1
     * Offset: 0
     */
    uint8_t changcheng_lock_sts;

    /**
     * Range: -
     * Scale: 1
     * Offset: 0
     */
    uint8_t changcheng_driver_door_sts;

    /**
     * Range: -
     * Scale: 1
     * Offset: 0
     */
    uint8_t changcheng_rl_door_sts;

    /**
     * Range: -
     * Scale: 1
     * Offset: 0
     */
    uint8_t changcheng_passenger_door_sts;

    /**
     * Range: -
     * Scale: 1
     * Offset: 0
     */
    uint8_t changcheng_rr_door_sts;

    /**
     * Range: -
     * Scale: 1
     * Offset: 0
     */
    uint8_t changcheng_left_turn_sw_sts;

    /**
     * Range: -
     * Scale: 1
     * Offset: 0
     */
    uint8_t changcheng_right_turn_sw_sts;
};

/**
 * Signals in message Obj_End_Msg_RR.
 *
 * All signal values are as on the CAN bus.
 */
struct sr439_obj_end_msg_rr_t {
    /**
     * Range: 0..1 (0..1 -)
     * Scale: 1
     * Offset: 0
     */
    uint8_t rf_voltage1_too_low;

    /**
     * Range: 0..1 (0..1 -)
     * Scale: 1
     * Offset: 0
     */
    uint8_t mcu_voltage_too_low;

    /**
     * Range: 0..1 (0..1 -)
     * Scale: 1
     * Offset: 0
     */
    uint8_t mcu_voltage_too_high;

    /**
     * Range: 0..1 (0..1 -)
     * Scale: 1
     * Offset: 0
     */
    uint8_t mcu_temperature_too_low;

    /**
     * Range: 0..1 (0..1 -)
     * Scale: 1
     * Offset: 0
     */
    uint8_t mcu_temperature_too_high;

    /**
     * Range: 0..1 (0..1 -)
     * Scale: 1
     * Offset: 0
     */
    uint8_t lost_communication_with_camera;

    /**
     * Range: 0..1 (0..1 -)
     * Scale: 1
     * Offset: 0
     */
    uint8_t communication_bus_off;

    /**
     * Range: 0..1 (0..1 -)
     * Scale: 1
     * Offset: 0
     */
    uint8_t radar_sleep_flag;

    /**
     * Range: 0..1 (0..1 -)
     * Scale: 1
     * Offset: 0
     */
    uint8_t mcu_master_clock_error;

    /**
     * Range: 0..1 (0..1 -)
     * Scale: 1
     * Offset: 0
     */
    uint8_t rf_temperature_too_low;

    /**
     * Range: 0..1 (0..1 -)
     * Scale: 1
     * Offset: 0
     */
    uint8_t rf_temperature_too_high;

    /**
     * Range: 0..1 (0..1 -)
     * Scale: 1
     * Offset: 0
     */
    uint8_t battery_voltage_too_low;

    /**
     * Range: 0..1 (0..1 -)
     * Scale: 1
     * Offset: 0
     */
    uint8_t battery_voltage_too_high;

    /**
     * Range: 0..1 (0..1 -)
     * Scale: 1
     * Offset: 0
     */
    uint8_t rf_voltage2_too_high;

    /**
     * Range: 0..1 (0..1 -)
     * Scale: 1
     * Offset: 0
     */
    uint8_t rf_voltage2_too_low;

    /**
     * Range: 0..1 (0..1 -)
     * Scale: 1
     * Offset: 0
     */
    uint8_t rf_voltage1_too_high;

    /**
     * Range: 0..1 (0..1 -)
     * Scale: 1
     * Offset: 0
     */
    uint8_t invalid_steering_angle_signal;

    /**
     * Range: 0..1 (0..1 -)
     * Scale: 1
     * Offset: 0
     */
    uint8_t invalid_yaw_rate_signal;

    /**
     * Range: 0..1 (0..1 -)
     * Scale: 1
     * Offset: 0
     */
    uint8_t invalid_vehicle_speed_signal;

    /**
     * Range: 0..1 (0..1 -)
     * Scale: 1
     * Offset: 0
     */
    uint8_t missing_calibration;

    /**
     * Range: 0..1 (0..1 -)
     * Scale: 1
     * Offset: 0
     */
    uint8_t rf_sensor_fault;

    /**
     * Range: 0..1 (0..1 -)
     * Scale: 1
     * Offset: 0
     */
    uint8_t g_sensor_fault;

    /**
     * Range: 0..1 (0..1 -)
     * Scale: 1
     * Offset: 0
     */
    uint8_t mcu_memory_error;

    /**
     * Range: 0..1 (0..1 -)
     * Scale: 1
     * Offset: 0
     */
    uint8_t mcu_error;

    /**
     * Range: 0..1 (0..1 -)
     * Scale: 1
     * Offset: 0
     */
    uint8_t radar_mount_position_shift_error;

    /**
     * Range: 0..1 (0..1 -)
     * Scale: 1
     * Offset: 0
     */
    uint8_t radar_block;

    /**
     * Range: 0..1 (0..1 -)
     * Scale: 1
     * Offset: 0
     */
    uint8_t invalid_ign_sta_signal;

    /**
     * Range: 0..1 (0..1 -)
     * Scale: 1
     * Offset: 0
     */
    uint8_t invalid_gear_position_signal;

    /**
     * Range: 0..1 (0..1 -)
     * Scale: 1
     * Offset: 0
     */
    uint8_t radar_yaw_rate_raw_v;
};

/**
 * Signals in message Obj_End_Msg_FR.
 *
 * All signal values are as on the CAN bus.
 */
struct sr439_obj_end_msg_fr_t {
    /**
     * Range: 0..1 (0..1 -)
     * Scale: 1
     * Offset: 0
     */
    uint8_t rf_voltage1_too_low;

    /**
     * Range: 0..1 (0..1 -)
     * Scale: 1
     * Offset: 0
     */
    uint8_t mcu_voltage_too_low;

    /**
     * Range: 0..1 (0..1 -)
     * Scale: 1
     * Offset: 0
     */
    uint8_t mcu_voltage_too_high;

    /**
     * Range: 0..1 (0..1 -)
     * Scale: 1
     * Offset: 0
     */
    uint8_t mcu_temperature_too_low;

    /**
     * Range: 0..1 (0..1 -)
     * Scale: 1
     * Offset: 0
     */
    uint8_t mcu_temperature_too_high;

    /**
     * Range: 0..1 (0..1 -)
     * Scale: 1
     * Offset: 0
     */
    uint8_t lost_communication_with_camera;

    /**
     * Range: 0..1 (0..1 -)
     * Scale: 1
     * Offset: 0
     */
    uint8_t communication_bus_off;

    /**
     * Range: 0..1 (0..1 -)
     * Scale: 1
     * Offset: 0
     */
    uint8_t radar_sleep_flag;

    /**
     * Range: 0..1 (0..1 -)
     * Scale: 1
     * Offset: 0
     */
    uint8_t mcu_master_clock_error;

    /**
     * Range: 0..1 (0..1 -)
     * Scale: 1
     * Offset: 0
     */
    uint8_t rf_temperature_too_low;

    /**
     * Range: 0..1 (0..1 -)
     * Scale: 1
     * Offset: 0
     */
    uint8_t rf_temperature_too_high;

    /**
     * Range: 0..1 (0..1 -)
     * Scale: 1
     * Offset: 0
     */
    uint8_t battery_voltage_too_low;

    /**
     * Range: 0..1 (0..1 -)
     * Scale: 1
     * Offset: 0
     */
    uint8_t battery_voltage_too_high;

    /**
     * Range: 0..1 (0..1 -)
     * Scale: 1
     * Offset: 0
     */
    uint8_t rf_voltage2_too_high;

    /**
     * Range: 0..1 (0..1 -)
     * Scale: 1
     * Offset: 0
     */
    uint8_t rf_voltage2_too_low;

    /**
     * Range: 0..1 (0..1 -)
     * Scale: 1
     * Offset: 0
     */
    uint8_t rf_voltage1_too_high;

    /**
     * Range: 0..1 (0..1 -)
     * Scale: 1
     * Offset: 0
     */
    uint8_t invalid_steering_angle_signal;

    /**
     * Range: 0..1 (0..1 -)
     * Scale: 1
     * Offset: 0
     */
    uint8_t invalid_yaw_rate_signal;

    /**
     * Range: 0..1 (0..1 -)
     * Scale: 1
     * Offset: 0
     */
    uint8_t invalid_vehicle_speed_signal;

    /**
     * Range: 0..1 (0..1 -)
     * Scale: 1
     * Offset: 0
     */
    uint8_t missing_calibration;

    /**
     * Range: 0..1 (0..1 -)
     * Scale: 1
     * Offset: 0
     */
    uint8_t rf_sensor_fault;

    /**
     * Range: 0..1 (0..1 -)
     * Scale: 1
     * Offset: 0
     */
    uint8_t g_sensor_fault;

    /**
     * Range: 0..1 (0..1 -)
     * Scale: 1
     * Offset: 0
     */
    uint8_t mcu_memory_error;

    /**
     * Range: 0..1 (0..1 -)
     * Scale: 1
     * Offset: 0
     */
    uint8_t mcu_error;

    /**
     * Range: 0..1 (0..1 -)
     * Scale: 1
     * Offset: 0
     */
    uint8_t radar_mount_position_shift_error;

    /**
     * Range: 0..1 (0..1 -)
     * Scale: 1
     * Offset: 0
     */
    uint8_t radar_block;

    /**
     * Range: 0..1 (0..1 -)
     * Scale: 1
     * Offset: 0
     */
    uint8_t invalid_ign_sta_signal;

    /**
     * Range: 0..1 (0..1 -)
     * Scale: 1
     * Offset: 0
     */
    uint8_t invalid_gear_position_signal;

    /**
     * Range: 0..1 (0..1 -)
     * Scale: 1
     * Offset: 0
     */
    uint8_t radar_yaw_rate_raw_v;
};

/**
 * Signals in message Obj_End_Msg_FL.
 *
 * All signal values are as on the CAN bus.
 */
struct sr439_obj_end_msg_fl_t {
    /**
     * Range: 0..1 (0..1 -)
     * Scale: 1
     * Offset: 0
     */
    uint8_t rf_voltage1_too_low;

    /**
     * Range: 0..1 (0..1 -)
     * Scale: 1
     * Offset: 0
     */
    uint8_t mcu_voltage_too_low;

    /**
     * Range: 0..1 (0..1 -)
     * Scale: 1
     * Offset: 0
     */
    uint8_t mcu_voltage_too_high;

    /**
     * Range: 0..1 (0..1 -)
     * Scale: 1
     * Offset: 0
     */
    uint8_t mcu_temperature_too_low;

    /**
     * Range: 0..1 (0..1 -)
     * Scale: 1
     * Offset: 0
     */
    uint8_t mcu_temperature_too_high;

    /**
     * Range: 0..1 (0..1 -)
     * Scale: 1
     * Offset: 0
     */
    uint8_t lost_communication_with_camera;

    /**
     * Range: 0..1 (0..1 -)
     * Scale: 1
     * Offset: 0
     */
    uint8_t communication_bus_off;

    /**
     * Range: 0..1 (0..1 -)
     * Scale: 1
     * Offset: 0
     */
    uint8_t radar_sleep_flag;

    /**
     * Range: 0..1 (0..1 -)
     * Scale: 1
     * Offset: 0
     */
    uint8_t mcu_master_clock_error;

    /**
     * Range: 0..1 (0..1 -)
     * Scale: 1
     * Offset: 0
     */
    uint8_t rf_temperature_too_low;

    /**
     * Range: 0..1 (0..1 -)
     * Scale: 1
     * Offset: 0
     */
    uint8_t rf_temperature_too_high;

    /**
     * Range: 0..1 (0..1 -)
     * Scale: 1
     * Offset: 0
     */
    uint8_t battery_voltage_too_low;

    /**
     * Range: 0..1 (0..1 -)
     * Scale: 1
     * Offset: 0
     */
    uint8_t battery_voltage_too_high;

    /**
     * Range: 0..1 (0..1 -)
     * Scale: 1
     * Offset: 0
     */
    uint8_t rf_voltage2_too_high;

    /**
     * Range: 0..1 (0..1 -)
     * Scale: 1
     * Offset: 0
     */
    uint8_t rf_voltage2_too_low;

    /**
     * Range: 0..1 (0..1 -)
     * Scale: 1
     * Offset: 0
     */
    uint8_t rf_voltage1_too_high;

    /**
     * Range: 0..1 (0..1 -)
     * Scale: 1
     * Offset: 0
     */
    uint8_t invalid_steering_angle_signal;

    /**
     * Range: 0..1 (0..1 -)
     * Scale: 1
     * Offset: 0
     */
    uint8_t invalid_yaw_rate_signal;

    /**
     * Range: 0..1 (0..1 -)
     * Scale: 1
     * Offset: 0
     */
    uint8_t invalid_vehicle_speed_signal;

    /**
     * Range: 0..1 (0..1 -)
     * Scale: 1
     * Offset: 0
     */
    uint8_t missing_calibration;

    /**
     * Range: 0..1 (0..1 -)
     * Scale: 1
     * Offset: 0
     */
    uint8_t rf_sensor_fault;

    /**
     * Range: 0..1 (0..1 -)
     * Scale: 1
     * Offset: 0
     */
    uint8_t g_sensor_fault;

    /**
     * Range: 0..1 (0..1 -)
     * Scale: 1
     * Offset: 0
     */
    uint8_t mcu_memory_error;

    /**
     * Range: 0..1 (0..1 -)
     * Scale: 1
     * Offset: 0
     */
    uint8_t mcu_error;

    /**
     * Range: 0..1 (0..1 -)
     * Scale: 1
     * Offset: 0
     */
    uint8_t radar_mount_position_shift_error;

    /**
     * Range: 0..1 (0..1 -)
     * Scale: 1
     * Offset: 0
     */
    uint8_t radar_block;

    /**
     * Range: 0..1 (0..1 -)
     * Scale: 1
     * Offset: 0
     */
    uint8_t invalid_ign_sta_signal;

    /**
     * Range: 0..1 (0..1 -)
     * Scale: 1
     * Offset: 0
     */
    uint8_t invalid_gear_position_signal;

    /**
     * Range: 0..1 (0..1 -)
     * Scale: 1
     * Offset: 0
     */
    uint8_t radar_yaw_rate_raw_v;
};

/**
 * Signals in message Obj_End_Msg_RL.
 *
 * All signal values are as on the CAN bus.
 */
struct sr439_obj_end_msg_rl_t {
    /**
     * Range: 0..1 (0..1 -)
     * Scale: 1
     * Offset: 0
     */
    uint8_t rf_voltage1_too_low;

    /**
     * Range: 0..1 (0..1 -)
     * Scale: 1
     * Offset: 0
     */
    uint8_t mcu_voltage_too_low;

    /**
     * Range: 0..1 (0..1 -)
     * Scale: 1
     * Offset: 0
     */
    uint8_t mcu_voltage_too_high;

    /**
     * Range: 0..1 (0..1 -)
     * Scale: 1
     * Offset: 0
     */
    uint8_t mcu_temperature_too_low;

    /**
     * Range: 0..1 (0..1 -)
     * Scale: 1
     * Offset: 0
     */
    uint8_t mcu_temperature_too_high;

    /**
     * Range: 0..1 (0..1 -)
     * Scale: 1
     * Offset: 0
     */
    uint8_t lost_communication_with_camera;

    /**
     * Range: 0..1 (0..1 -)
     * Scale: 1
     * Offset: 0
     */
    uint8_t communication_bus_off;

    /**
     * Range: 0..1 (0..1 -)
     * Scale: 1
     * Offset: 0
     */
    uint8_t radar_sleep_flag;

    /**
     * Range: 0..1 (0..1 -)
     * Scale: 1
     * Offset: 0
     */
    uint8_t mcu_master_clock_error;

    /**
     * Range: 0..1 (0..1 -)
     * Scale: 1
     * Offset: 0
     */
    uint8_t rf_temperature_too_low;

    /**
     * Range: 0..1 (0..1 -)
     * Scale: 1
     * Offset: 0
     */
    uint8_t rf_temperature_too_high;

    /**
     * Range: 0..1 (0..1 -)
     * Scale: 1
     * Offset: 0
     */
    uint8_t battery_voltage_too_low;

    /**
     * Range: 0..1 (0..1 -)
     * Scale: 1
     * Offset: 0
     */
    uint8_t battery_voltage_too_high;

    /**
     * Range: 0..1 (0..1 -)
     * Scale: 1
     * Offset: 0
     */
    uint8_t rf_voltage2_too_high;

    /**
     * Range: 0..1 (0..1 -)
     * Scale: 1
     * Offset: 0
     */
    uint8_t rf_voltage2_too_low;

    /**
     * Range: 0..1 (0..1 -)
     * Scale: 1
     * Offset: 0
     */
    uint8_t rf_voltage1_too_high;

    /**
     * Range: 0..1 (0..1 -)
     * Scale: 1
     * Offset: 0
     */
    uint8_t invalid_steering_angle_signal;

    /**
     * Range: 0..1 (0..1 -)
     * Scale: 1
     * Offset: 0
     */
    uint8_t invalid_yaw_rate_signal;

    /**
     * Range: 0..1 (0..1 -)
     * Scale: 1
     * Offset: 0
     */
    uint8_t invalid_vehicle_speed_signal;

    /**
     * Range: 0..1 (0..1 -)
     * Scale: 1
     * Offset: 0
     */
    uint8_t missing_calibration;

    /**
     * Range: 0..1 (0..1 -)
     * Scale: 1
     * Offset: 0
     */
    uint8_t rf_sensor_fault;

    /**
     * Range: 0..1 (0..1 -)
     * Scale: 1
     * Offset: 0
     */
    uint8_t g_sensor_fault;

    /**
     * Range: 0..1 (0..1 -)
     * Scale: 1
     * Offset: 0
     */
    uint8_t mcu_memory_error;

    /**
     * Range: 0..1 (0..1 -)
     * Scale: 1
     * Offset: 0
     */
    uint8_t mcu_error;

    /**
     * Range: 0..1 (0..1 -)
     * Scale: 1
     * Offset: 0
     */
    uint8_t radar_mount_position_shift_error;

    /**
     * Range: 0..1 (0..1 -)
     * Scale: 1
     * Offset: 0
     */
    uint8_t radar_block;

    /**
     * Range: 0..1 (0..1 -)
     * Scale: 1
     * Offset: 0
     */
    uint8_t invalid_ign_sta_signal;

    /**
     * Range: 0..1 (0..1 -)
     * Scale: 1
     * Offset: 0
     */
    uint8_t invalid_gear_position_signal;

    /**
     * Range: 0..1 (0..1 -)
     * Scale: 1
     * Offset: 0
     */
    uint8_t radar_yaw_rate_raw_v;
};

/**
 * Signals in message Obj_Quality_Info_RR.
 *
 * All signal values are as on the CAN bus.
 */
struct sr439_obj_quality_info_rr_t {
    /**
     * Range: 0..255 (0..255 -)
     * Scale: 1
     * Offset: 0
     */
    uint8_t obj_id;

    /**
     * Range: 0..31 (0..31 -)
     * Scale: 1
     * Offset: 0
     */
    uint8_t obj_dist_lon_rms;

    /**
     * Range: 0..31 (0..31 -)
     * Scale: 1
     * Offset: 0
     */
    uint8_t obj_dist_lat_rms;

    /**
     * Range: 0..31 (0..31 -)
     * Scale: 1
     * Offset: 0
     */
    uint8_t obj_vel_lon_rms;

    /**
     * Range: 0..31 (0..31 -)
     * Scale: 1
     * Offset: 0
     */
    uint8_t obj_vel_lat_rms;

    /**
     * Range: 0..31 (0..31 -)
     * Scale: 1
     * Offset: 0
     */
    uint8_t obj_acc_lon_rms;

    /**
     * Range: 0..31 (0..31 -)
     * Scale: 1
     * Offset: 0
     */
    uint8_t obj_acc_lat_rms;

    /**
     * Range: 0..1 (0..1 -)
     * Scale: 1
     * Offset: 0
     */
    uint8_t obj_cipv;

    /**
     * Range: 0..7 (0..7 -)
     * Scale: 1
     * Offset: 0
     */
    uint8_t obj_prob_of_class;

    /**
     * Range: 0..7 (0..7 -)
     * Scale: 1
     * Offset: 0
     */
    uint8_t obj_prob_of_exist;

    /**
     * Range: 0..7 (0..7 -)
     * Scale: 1
     * Offset: 0
     */
    uint8_t obj_meas_state;
};

/**
 * Signals in message Obj_Quality_Info_FR.
 *
 * All signal values are as on the CAN bus.
 */
struct sr439_obj_quality_info_fr_t {
    /**
     * Range: 0..255 (0..255 -)
     * Scale: 1
     * Offset: 0
     */
    uint8_t obj_id;

    /**
     * Range: 0..31 (0..31 -)
     * Scale: 1
     * Offset: 0
     */
    uint8_t obj_dist_lon_rms;

    /**
     * Range: 0..31 (0..31 -)
     * Scale: 1
     * Offset: 0
     */
    uint8_t obj_dist_lat_rms;

    /**
     * Range: 0..31 (0..31 -)
     * Scale: 1
     * Offset: 0
     */
    uint8_t obj_vel_lon_rms;

    /**
     * Range: 0..31 (0..31 -)
     * Scale: 1
     * Offset: 0
     */
    uint8_t obj_vel_lat_rms;

    /**
     * Range: 0..31 (0..31 -)
     * Scale: 1
     * Offset: 0
     */
    uint8_t obj_acc_lon_rms;

    /**
     * Range: 0..31 (0..31 -)
     * Scale: 1
     * Offset: 0
     */
    uint8_t obj_acc_lat_rms;

    /**
     * Range: 0..1 (0..1 -)
     * Scale: 1
     * Offset: 0
     */
    uint8_t obj_cipv;

    /**
     * Range: 0..7 (0..7 -)
     * Scale: 1
     * Offset: 0
     */
    uint8_t obj_prob_of_class;

    /**
     * Range: 0..7 (0..7 -)
     * Scale: 1
     * Offset: 0
     */
    uint8_t obj_prob_of_exist;

    /**
     * Range: 0..7 (0..7 -)
     * Scale: 1
     * Offset: 0
     */
    uint8_t obj_meas_state;
};

/**
 * Signals in message Obj_Quality_Info_FL.
 *
 * All signal values are as on the CAN bus.
 */
struct sr439_obj_quality_info_fl_t {
    /**
     * Range: 0..255 (0..255 -)
     * Scale: 1
     * Offset: 0
     */
    uint8_t obj_id;

    /**
     * Range: 0..31 (0..31 -)
     * Scale: 1
     * Offset: 0
     */
    uint8_t obj_dist_lon_rms;

    /**
     * Range: 0..31 (0..31 -)
     * Scale: 1
     * Offset: 0
     */
    uint8_t obj_dist_lat_rms;

    /**
     * Range: 0..31 (0..31 -)
     * Scale: 1
     * Offset: 0
     */
    uint8_t obj_vel_lon_rms;

    /**
     * Range: 0..31 (0..31 -)
     * Scale: 1
     * Offset: 0
     */
    uint8_t obj_vel_lat_rms;

    /**
     * Range: 0..31 (0..31 -)
     * Scale: 1
     * Offset: 0
     */
    uint8_t obj_acc_lon_rms;

    /**
     * Range: 0..31 (0..31 -)
     * Scale: 1
     * Offset: 0
     */
    uint8_t obj_acc_lat_rms;

    /**
     * Range: 0..1 (0..1 -)
     * Scale: 1
     * Offset: 0
     */
    uint8_t obj_cipv;

    /**
     * Range: 0..7 (0..7 -)
     * Scale: 1
     * Offset: 0
     */
    uint8_t obj_prob_of_class;

    /**
     * Range: 0..7 (0..7 -)
     * Scale: 1
     * Offset: 0
     */
    uint8_t obj_prob_of_exist;

    /**
     * Range: 0..7 (0..7 -)
     * Scale: 1
     * Offset: 0
     */
    uint8_t obj_meas_state;
};

/**
 * Signals in message Obj_General_Info_RR.
 *
 * All signal values are as on the CAN bus.
 */
struct sr439_obj_general_info_rr_t {
    /**
     * Range: 0..255 (0..255 -)
     * Scale: 1
     * Offset: 0
     */
    uint8_t obj_id;

    /**
     * Range: 0..3360 (-60..150 m)
     * Scale: 0.0625
     * Offset: -60
     */
    uint16_t obj_dist_long;

    /**
     * Range: 0..32804 (-128..127.875 m)
     * Scale: 0.0078
     * Offset: -128
     */
    uint16_t obj_dist_lat;

    /**
     * Range: 0..15 (0..15 -)
     * Scale: 1
     * Offset: 0
     */
    uint8_t obj_dyn_prop;

    /**
     * Range: 0..4095 (-102..102.75 m/s)
     * Scale: 0.05
     * Offset: -102
     */
    uint16_t obj_vrel_long;

    /**
     * Range: 0..4095 (-102..102.75 m/s)
     * Scale: 0.05
     * Offset: -102
     */
    uint16_t obj_vrel_lat;
};

/**
 * Signals in message Obj_General_Info_FR.
 *
 * All signal values are as on the CAN bus.
 */
struct sr439_obj_general_info_fr_t {
    /**
     * Range: 0..255 (0..255 -)
     * Scale: 1
     * Offset: 0
     */
    uint8_t obj_id;

    /**
     * Range: 0..3360 (-60..150 m)
     * Scale: 0.0625
     * Offset: -60
     */
    uint16_t obj_dist_long;

    /**
     * Range: 0..32804 (-128..127.875 m)
     * Scale: 0.0078
     * Offset: -128
     */
    uint16_t obj_dist_lat;

    /**
     * Range: 0..15 (0..15 -)
     * Scale: 1
     * Offset: 0
     */
    uint8_t obj_dyn_prop;

    /**
     * Range: 0..4095 (-102..102.75 m/s)
     * Scale: 0.05
     * Offset: -102
     */
    uint16_t obj_vrel_long;

    /**
     * Range: 0..4095 (-102..102.75 m/s)
     * Scale: 0.05
     * Offset: -102
     */
    uint16_t obj_vrel_lat;
};

/**
 * Signals in message Obj_General_Info_FL.
 *
 * All signal values are as on the CAN bus.
 */
struct sr439_obj_general_info_fl_t {
    /**
     * Range: 0..255 (0..255 -)
     * Scale: 1
     * Offset: 0
     */
    uint8_t obj_id;

    /**
     * Range: 0..3360 (-60..150 m)
     * Scale: 0.0625
     * Offset: -60
     */
    uint16_t obj_dist_long;

    /**
     * Range: 0..32804 (-128..127.875 m)
     * Scale: 0.0078
     * Offset: -128
     */
    uint16_t obj_dist_lat;

    /**
     * Range: 0..15 (0..15 -)
     * Scale: 1
     * Offset: 0
     */
    uint8_t obj_dyn_prop;

    /**
     * Range: 0..4095 (-102..102.75 m/s)
     * Scale: 0.05
     * Offset: -102
     */
    uint16_t obj_vrel_long;

    /**
     * Range: 0..4095 (-102..102.75 m/s)
     * Scale: 0.05
     * Offset: -102
     */
    uint16_t obj_vrel_lat;
};

/**
 * Signals in message Obj_Extended_Info_RR.
 *
 * All signal values are as on the CAN bus.
 */
struct sr439_obj_extended_info_rr_t {
    /**
     * Range: 0..255 (0..255 -)
     * Scale: 1
     * Offset: 0
     */
    uint8_t obj_id;

    /**
     * Range: 0..2000 (-40..40 m/s^2)
     * Scale: 0.04
     * Offset: -40
     */
    uint16_t obj_arel_lon;

    /**
     * Range: 0..2000 (-40..40 m/s^2)
     * Scale: 0.04
     * Offset: -40
     */
    uint16_t obj_arel_lat;

    /**
     * Range: 0..7 (0..7 -)
     * Scale: 1
     * Offset: 0
     */
    uint8_t obj_class;

    /**
     * Range: 0..900 (-180..180 deg)
     * Scale: 0.4
     * Offset: -180
     */
    uint16_t obj_orien_angle;

    /**
     * Range: 0..31 (0..3.1 m)
     * Scale: 0.1
     * Offset: 0
     */
    uint8_t obj_width;

    /**
     * Range: 0..255 (0..25.5 m)
     * Scale: 0.1
     * Offset: 0
     */
    uint8_t obj_length;

    /**
     * Range: 0..63 (-10..21.5 -)
     * Scale: 0.5
     * Offset: -10
     */
    uint8_t obj_height;
};

/**
 * Signals in message Obj_Extended_Info_FR.
 *
 * All signal values are as on the CAN bus.
 */
struct sr439_obj_extended_info_fr_t {
    /**
     * Range: 0..255 (0..255 -)
     * Scale: 1
     * Offset: 0
     */
    uint8_t obj_id;

    /**
     * Range: 0..2000 (-40..40 m/s^2)
     * Scale: 0.04
     * Offset: -40
     */
    uint16_t obj_arel_lon;

    /**
     * Range: 0..2000 (-40..40 m/s^2)
     * Scale: 0.04
     * Offset: -40
     */
    uint16_t obj_arel_lat;

    /**
     * Range: 0..7 (0..7 -)
     * Scale: 1
     * Offset: 0
     */
    uint8_t obj_class;

    /**
     * Range: 0..900 (-180..180 deg)
     * Scale: 0.4
     * Offset: -180
     */
    uint16_t obj_orien_angle;

    /**
     * Range: 0..31 (0..3.1 m)
     * Scale: 0.1
     * Offset: 0
     */
    uint8_t obj_width;

    /**
     * Range: 0..255 (0..25.5 m)
     * Scale: 0.1
     * Offset: 0
     */
    uint8_t obj_length;

    /**
     * Range: 0..63 (-10..21.5 -)
     * Scale: 0.5
     * Offset: -10
     */
    uint8_t obj_height;
};

/**
 * Signals in message Obj_Extended_Info_FL.
 *
 * All signal values are as on the CAN bus.
 */
struct sr439_obj_extended_info_fl_t {
    /**
     * Range: 0..255 (0..255 -)
     * Scale: 1
     * Offset: 0
     */
    uint8_t obj_id;

    /**
     * Range: 0..2000 (-40..40 m/s^2)
     * Scale: 0.04
     * Offset: -40
     */
    uint16_t obj_arel_lon;

    /**
     * Range: 0..2000 (-40..40 m/s^2)
     * Scale: 0.04
     * Offset: -40
     */
    uint16_t obj_arel_lat;

    /**
     * Range: 0..7 (0..7 -)
     * Scale: 1
     * Offset: 0
     */
    uint8_t obj_class;

    /**
     * Range: 0..900 (-180..180 deg)
     * Scale: 0.4
     * Offset: -180
     */
    uint16_t obj_orien_angle;

    /**
     * Range: 0..31 (0..3.1 m)
     * Scale: 0.1
     * Offset: 0
     */
    uint8_t obj_width;

    /**
     * Range: 0..255 (0..25.5 m)
     * Scale: 0.1
     * Offset: 0
     */
    uint8_t obj_length;

    /**
     * Range: 0..63 (-10..21.5 -)
     * Scale: 0.5
     * Offset: -10
     */
    uint8_t obj_height;
};

/**
 * Signals in message Obj_Collision_Info_RR.
 *
 * All signal values are as on the CAN bus.
 */
struct sr439_obj_collision_info_rr_t {
    /**
     * Range: 0..255 (0..255 -)
     * Scale: 1
     * Offset: 0
     */
    uint8_t obj_id;

    /**
     * Range: 0..9 (0..9 -)
     * Scale: 1
     * Offset: 0
     */
    uint8_t obj_ref_point;

    /**
     * Range: 0..7 (0..7 -)
     * Scale: 1
     * Offset: 0
     */
    uint8_t obj_track_state;

    /**
     * Range: 0..31 (0..31 -)
     * Scale: 1
     * Offset: 0
     */
    uint8_t obj_corner_rel_wid;

    /**
     * Range: 0..63 (0..63 -)
     * Scale: 1
     * Offset: 0
     */
    uint8_t obj_corner_rel_len;

    /**
     * Range: 0..628 (-3.14..3.14 rad/s)
     * Scale: 0.01
     * Offset: -3.14
     */
    uint16_t obj_yaw_rate;
};

/**
 * Signals in message Obj_Collision_Info_FR.
 *
 * All signal values are as on the CAN bus.
 */
struct sr439_obj_collision_info_fr_t {
    /**
     * Range: 0..255 (0..255 -)
     * Scale: 1
     * Offset: 0
     */
    uint8_t obj_id;

    /**
     * Range: 0..9 (0..9 -)
     * Scale: 1
     * Offset: 0
     */
    uint8_t obj_ref_point;

    /**
     * Range: 0..7 (0..7 -)
     * Scale: 1
     * Offset: 0
     */
    uint8_t obj_track_state;

    /**
     * Range: 0..31 (0..31 -)
     * Scale: 1
     * Offset: 0
     */
    uint8_t obj_corner_rel_wid;

    /**
     * Range: 0..63 (0..63 -)
     * Scale: 1
     * Offset: 0
     */
    uint8_t obj_corner_rel_len;

    /**
     * Range: 0..628 (-3.14..3.14 rad/s)
     * Scale: 0.01
     * Offset: -3.14
     */
    uint16_t obj_yaw_rate;
};

/**
 * Signals in message Obj_Collision_Info_FL.
 *
 * All signal values are as on the CAN bus.
 */
struct sr439_obj_collision_info_fl_t {
    /**
     * Range: 0..255 (0..255 -)
     * Scale: 1
     * Offset: 0
     */
    uint8_t obj_id;

    /**
     * Range: 0..9 (0..9 -)
     * Scale: 1
     * Offset: 0
     */
    uint8_t obj_ref_point;

    /**
     * Range: 0..7 (0..7 -)
     * Scale: 1
     * Offset: 0
     */
    uint8_t obj_track_state;

    /**
     * Range: 0..31 (0..31 -)
     * Scale: 1
     * Offset: 0
     */
    uint8_t obj_corner_rel_wid;

    /**
     * Range: 0..63 (0..63 -)
     * Scale: 1
     * Offset: 0
     */
    uint8_t obj_corner_rel_len;

    /**
     * Range: 0..628 (-3.14..3.14 rad/s)
     * Scale: 0.01
     * Offset: -3.14
     */
    uint16_t obj_yaw_rate;
};

/**
 * Signals in message Obj_0_Status_RR.
 *
 * All signal values are as on the CAN bus.
 */
struct sr439_obj_0_status_rr_t {
    /**
     * Range: 0..255 (0..255 -)
     * Scale: 1
     * Offset: 0
     */
    uint8_t obj_nof_object;

    /**
     * Range: 0..65535 (0..65535 -)
     * Scale: 1
     * Offset: 0
     */
    uint16_t obj_meas_counter;

    /**
     * Range: 0..15 (0..15 -)
     * Scale: 1
     * Offset: 0
     */
    uint8_t obj_interface_version;

    /**
     * Range: 0..3 (0..3 -)
     * Scale: 1
     * Offset: 0
     */
    uint8_t obj_bsd_warning;

    /**
     * Range: 0..3 (0..3 -)
     * Scale: 1
     * Offset: 0
     */
    uint8_t obj_lca_warning;

    /**
     * Range: 0..3 (0..3 -)
     * Scale: 1
     * Offset: 0
     */
    uint8_t obj_dow_warning;

    /**
     * Range: 0..3 (0..3 -)
     * Scale: 1
     * Offset: 0
     */
    uint8_t obj_rcta_warning;

    /**
     * Range: 0..3 (0..3 -)
     * Scale: 1
     * Offset: 0
     */
    uint8_t obj_rctb_warning;

    /**
     * Range: 0..3 (0..3 -)
     * Scale: 1
     * Offset: 0
     */
    uint8_t obj_fcta_warning;

    /**
     * Range: 0..3 (0..3 -)
     * Scale: 1
     * Offset: 0
     */
    uint8_t obj_fctb_warning;

    /**
     * Range: 0..255 (0..255 -)
     * Scale: 1
     * Offset: 0
     */
    uint8_t obj_cipvid;
};

/**
 * Signals in message Obj_0_Status_FR.
 *
 * All signal values are as on the CAN bus.
 */
struct sr439_obj_0_status_fr_t {
    /**
     * Range: 0..255 (0..255 -)
     * Scale: 1
     * Offset: 0
     */
    uint8_t obj_nof_object;

    /**
     * Range: 0..65535 (0..65535 -)
     * Scale: 1
     * Offset: 0
     */
    uint16_t obj_meas_counter;

    /**
     * Range: 0..15 (0..15 -)
     * Scale: 1
     * Offset: 0
     */
    uint8_t obj_interface_version;

    /**
     * Range: 0..3 (0..3 -)
     * Scale: 1
     * Offset: 0
     */
    uint8_t obj_bsd_warning;

    /**
     * Range: 0..3 (0..3 -)
     * Scale: 1
     * Offset: 0
     */
    uint8_t obj_lca_warning;

    /**
     * Range: 0..3 (0..3 -)
     * Scale: 1
     * Offset: 0
     */
    uint8_t obj_dow_warning;

    /**
     * Range: 0..3 (0..3 -)
     * Scale: 1
     * Offset: 0
     */
    uint8_t obj_rcta_warning;

    /**
     * Range: 0..3 (0..3 -)
     * Scale: 1
     * Offset: 0
     */
    uint8_t obj_rctb_warning;

    /**
     * Range: 0..3 (0..3 -)
     * Scale: 1
     * Offset: 0
     */
    uint8_t obj_fcta_warning;

    /**
     * Range: 0..3 (0..3 -)
     * Scale: 1
     * Offset: 0
     */
    uint8_t obj_fctb_warning;

    /**
     * Range: 0..255 (0..255 -)
     * Scale: 1
     * Offset: 0
     */
    uint8_t obj_cipvid;
};

/**
 * Signals in message Obj_0_Status_FL.
 *
 * All signal values are as on the CAN bus.
 */
struct sr439_obj_0_status_fl_t {
    /**
     * Range: 0..255 (0..255 -)
     * Scale: 1
     * Offset: 0
     */
    uint8_t obj_nof_object;

    /**
     * Range: 0..65535 (0..65535 -)
     * Scale: 1
     * Offset: 0
     */
    uint16_t obj_meas_counter;

    /**
     * Range: 0..15 (0..15 -)
     * Scale: 1
     * Offset: 0
     */
    uint8_t obj_interface_version;

    /**
     * Range: 0..3 (0..3 -)
     * Scale: 1
     * Offset: 0
     */
    uint8_t obj_bsd_warning;

    /**
     * Range: 0..3 (0..3 -)
     * Scale: 1
     * Offset: 0
     */
    uint8_t obj_lca_warning;

    /**
     * Range: 0..3 (0..3 -)
     * Scale: 1
     * Offset: 0
     */
    uint8_t obj_dow_warning;

    /**
     * Range: 0..3 (0..3 -)
     * Scale: 1
     * Offset: 0
     */
    uint8_t obj_rcta_warning;

    /**
     * Range: 0..3 (0..3 -)
     * Scale: 1
     * Offset: 0
     */
    uint8_t obj_rctb_warning;

    /**
     * Range: 0..3 (0..3 -)
     * Scale: 1
     * Offset: 0
     */
    uint8_t obj_fcta_warning;

    /**
     * Range: 0..3 (0..3 -)
     * Scale: 1
     * Offset: 0
     */
    uint8_t obj_fctb_warning;

    /**
     * Range: 0..255 (0..255 -)
     * Scale: 1
     * Offset: 0
     */
    uint8_t obj_cipvid;
};

/**
 * Signals in message Cluster_Header_RR.
 *
 * All signal values are as on the CAN bus.
 */
struct sr439_cluster_header_rr_t {
    /**
     * Range: 0..3 (0..3 -)
     * Scale: 1
     * Offset: 0
     */
    uint8_t cluster_frame_type;

    /**
     * Range: 0..16777215 (0..16777215 -)
     * Scale: 1
     * Offset: 0
     */
    uint32_t cluster_frame_num;

    /**
     * Range: 0..255 (0..255 -)
     * Scale: 1
     * Offset: 0
     */
    uint8_t cluster_target_number;

    /**
     * Range: 0..1073741823 (0..1073741823 -)
     * Scale: 1
     * Offset: 0
     */
    uint32_t cluster_timestamp;

    /**
     * Range: 0..3 (0..3 -)
     * Scale: 1
     * Offset: 0
     */
    uint8_t cluster_radar_identify;

    /**
     * Range: 0..65535 (-327.68..327.67 km/h)
     * Scale: 0.01
     * Offset: -327.68
     */
    uint16_t cluster_vehicle_speed;

    /**
     * Range: 0..65535 (-327.68..327.67 deg/s)
     * Scale: 0.01
     * Offset: -327.68
     */
    uint16_t cluster_yaw_rate;

    /**
     * Range: 0..16 (0..16 -)
     * Scale: 1
     * Offset: 0
     */
    uint8_t cluster_gear_st;
};

/**
 * Signals in message Cluster_Header_FR.
 *
 * All signal values are as on the CAN bus.
 */
struct sr439_cluster_header_fr_t {
    /**
     * Range: 0..3 (0..3 -)
     * Scale: 1
     * Offset: 0
     */
    uint8_t cluster_frame_type;

    /**
     * Range: 0..16777215 (0..16777215 -)
     * Scale: 1
     * Offset: 0
     */
    uint32_t cluster_frame_num;

    /**
     * Range: 0..255 (0..255 -)
     * Scale: 1
     * Offset: 0
     */
    uint8_t cluster_target_number;

    /**
     * Range: 0..1073741823 (0..1073741823 -)
     * Scale: 1
     * Offset: 0
     */
    uint32_t cluster_timestamp;

    /**
     * Range: 0..3 (0..3 -)
     * Scale: 1
     * Offset: 0
     */
    uint8_t cluster_radar_identify;

    /**
     * Range: 0..65535 (-327.68..327.67 km/h)
     * Scale: 0.01
     * Offset: -327.68
     */
    uint16_t cluster_vehicle_speed;

    /**
     * Range: 0..65535 (-327.68..327.67 deg/s)
     * Scale: 0.01
     * Offset: -327.68
     */
    uint16_t cluster_yaw_rate;

    /**
     * Range: 0..16 (0..16 -)
     * Scale: 1
     * Offset: 0
     */
    uint8_t cluster_gear_st;
};

/**
 * Signals in message Cluster_Header_FL.
 *
 * All signal values are as on the CAN bus.
 */
struct sr439_cluster_header_fl_t {
    /**
     * Range: 0..3 (0..3 -)
     * Scale: 1
     * Offset: 0
     */
    uint8_t cluster_frame_type;

    /**
     * Range: 0..16777215 (0..16777215 -)
     * Scale: 1
     * Offset: 0
     */
    uint32_t cluster_frame_num;

    /**
     * Range: 0..255 (0..255 -)
     * Scale: 1
     * Offset: 0
     */
    uint8_t cluster_target_number;

    /**
     * Range: 0..1073741823 (0..1073741823 -)
     * Scale: 1
     * Offset: 0
     */
    uint32_t cluster_timestamp;

    /**
     * Range: 0..3 (0..3 -)
     * Scale: 1
     * Offset: 0
     */
    uint8_t cluster_radar_identify;

    /**
     * Range: 0..65535 (-327.68..327.67 km/h)
     * Scale: 0.01
     * Offset: -327.68
     */
    uint16_t cluster_vehicle_speed;

    /**
     * Range: 0..65535 (-327.68..327.67 deg/s)
     * Scale: 0.01
     * Offset: -327.68
     */
    uint16_t cluster_yaw_rate;

    /**
     * Range: 0..16 (0..16 -)
     * Scale: 1
     * Offset: 0
     */
    uint8_t cluster_gear_st;
};

/**
 * Signals in message Cluster_General_Information_RR.
 *
 * All signal values are as on the CAN bus.
 */
struct sr439_cluster_general_information_rr_t {
    /**
     * Range: 0..255 (0..255 -)
     * Scale: 1
     * Offset: 0
     */
    uint8_t cluster_id_1;

    /**
     * Range: 0..12000 (0..120 m)
     * Scale: 0.01
     * Offset: 0
     */
    uint16_t cluster_range_1;

    /**
     * Range: 0..6666 (-111.11..55.55 m/s)
     * Scale: 0.025
     * Offset: -111.11
     */
    uint16_t cluster_velocity_1;

    /**
     * Range: 0..3600 (-90..90 deg)
     * Scale: 0.05
     * Offset: -90
     */
    uint16_t cluster_azimuth_1;

    /**
     * Range: 0..1000 (-25..25 deg)
     * Scale: 0.05
     * Offset: -25
     */
    uint16_t cluster_elevation_1;

    /**
     * Range: 0..3 (0..3 -)
     * Scale: 1
     * Offset: 0
     */
    uint8_t cluster_dyn_prop_1;

    /**
     * Range: 0..7 (0..7 -)
     * Scale: 1
     * Offset: 0
     */
    uint8_t cluster_prob_of_exist_1;

    /**
     * Range: 0..254 (-30..97 dbsm)
     * Scale: 0.5
     * Offset: -30
     */
    uint8_t cluster_rcs_1;

    /**
     * Range: 0..510 (-200..55 db)
     * Scale: 0.5
     * Offset: -200
     */
    uint16_t cluster_power_1;

    /**
     * Range: 0..510 (-10..245 db)
     * Scale: 0.5
     * Offset: -10
     */
    uint16_t cluster_snr_1;

    /**
     * Range: 0..255 (0..255 -)
     * Scale: 1
     * Offset: 0
     */
    uint8_t cluster_id_2;

    /**
     * Range: 0..12000 (0..120 m)
     * Scale: 0.01
     * Offset: 0
     */
    uint16_t cluster_range_2;

    /**
     * Range: 0..6666 (-111.11..55.55 m/s)
     * Scale: 0.025
     * Offset: -111.11
     */
    uint16_t cluster_velocity_2;

    /**
     * Range: 0..3600 (-90..90 deg)
     * Scale: 0.05
     * Offset: -90
     */
    uint16_t cluster_azimuth_2;

    /**
     * Range: 0..1000 (-25..25 deg)
     * Scale: 0.05
     * Offset: -25
     */
    uint16_t cluster_elevation_2;

    /**
     * Range: 0..3 (0..3 -)
     * Scale: 1
     * Offset: 0
     */
    uint8_t cluster_dyn_prop_2;

    /**
     * Range: 0..7 (0..7 -)
     * Scale: 1
     * Offset: 0
     */
    uint8_t cluster_prob_of_exist_2;

    /**
     * Range: 0..254 (-30..97 dbsm)
     * Scale: 0.5
     * Offset: -30
     */
    uint8_t cluster_rcs_2;

    /**
     * Range: 0..510 (-200..55 db)
     * Scale: 0.5
     * Offset: -200
     */
    uint16_t cluster_power_2;

    /**
     * Range: 0..510 (-10..245 db)
     * Scale: 0.5
     * Offset: -10
     */
    uint16_t cluster_snr_2;

    /**
     * Range: 0..255 (0..255 -)
     * Scale: 1
     * Offset: 0
     */
    uint8_t cluster_id_3;

    /**
     * Range: 0..12000 (0..120 m)
     * Scale: 0.01
     * Offset: 0
     */
    uint16_t cluster_range_3;

    /**
     * Range: 0..6666 (-111.11..55.55 m/s)
     * Scale: 0.025
     * Offset: -111.11
     */
    uint16_t cluster_velocity_3;

    /**
     * Range: 0..3600 (-90..90 deg)
     * Scale: 0.05
     * Offset: -90
     */
    uint16_t cluster_azimuth_3;

    /**
     * Range: 0..1000 (-25..25 deg)
     * Scale: 0.05
     * Offset: -25
     */
    uint16_t cluster_elevation_3;

    /**
     * Range: 0..3 (0..3 -)
     * Scale: 1
     * Offset: 0
     */
    uint8_t cluster_dyn_prop_3;

    /**
     * Range: 0..7 (0..7 -)
     * Scale: 1
     * Offset: 0
     */
    uint8_t cluster_prob_of_exist_3;

    /**
     * Range: 0..254 (-30..97 dbsm)
     * Scale: 0.5
     * Offset: -30
     */
    uint8_t cluster_rcs_3;

    /**
     * Range: 0..510 (-200..55 db)
     * Scale: 0.5
     * Offset: -200
     */
    uint16_t cluster_power_3;

    /**
     * Range: 0..510 (-10..245 db)
     * Scale: 0.5
     * Offset: -10
     */
    uint16_t cluster_snr_3;

    /**
     * Range: 0..255 (0..255 -)
     * Scale: 1
     * Offset: 0
     */
    uint8_t cluster_id_4;

    /**
     * Range: 0..12000 (0..120 m)
     * Scale: 0.01
     * Offset: 0
     */
    uint16_t cluster_range_4;

    /**
     * Range: 0..6666 (-111.11..55.55 m/s)
     * Scale: 0.025
     * Offset: -111.11
     */
    uint16_t cluster_velocity_4;

    /**
     * Range: 0..3600 (-90..90 deg)
     * Scale: 0.05
     * Offset: -90
     */
    uint16_t cluster_azimuth_4;

    /**
     * Range: 0..1000 (-25..25 deg)
     * Scale: 0.05
     * Offset: -25
     */
    uint16_t cluster_elevation_4;

    /**
     * Range: 0..3 (0..3 -)
     * Scale: 1
     * Offset: 0
     */
    uint8_t cluster_dyn_prop_4;

    /**
     * Range: 0..7 (0..7 -)
     * Scale: 1
     * Offset: 0
     */
    uint8_t cluster_prob_of_exist_4;

    /**
     * Range: 0..254 (-30..97 dbsm)
     * Scale: 0.5
     * Offset: -30
     */
    uint8_t cluster_rcs_4;

    /**
     * Range: 0..510 (-200..55 db)
     * Scale: 0.5
     * Offset: -200
     */
    uint16_t cluster_power_4;

    /**
     * Range: 0..510 (-10..245 db)
     * Scale: 0.5
     * Offset: -10
     */
    uint16_t cluster_snr_4;

    /**
     * Range: 0..255 (0..255 -)
     * Scale: 1
     * Offset: 0
     */
    uint8_t cluster_id_5;

    /**
     * Range: 0..12000 (0..120 m)
     * Scale: 0.01
     * Offset: 0
     */
    uint16_t cluster_range_5;

    /**
     * Range: 0..6666 (-111.11..55.55 m/s)
     * Scale: 0.025
     * Offset: -111.11
     */
    uint16_t cluster_velocity_5;

    /**
     * Range: 0..3600 (-90..90 deg)
     * Scale: 0.05
     * Offset: -90
     */
    uint16_t cluster_azimuth_5;

    /**
     * Range: 0..1000 (-25..25 deg)
     * Scale: 0.05
     * Offset: -25
     */
    uint16_t cluster_elevation_5;

    /**
     * Range: 0..3 (0..3 -)
     * Scale: 1
     * Offset: 0
     */
    uint8_t cluster_dyn_prop_5;

    /**
     * Range: 0..7 (0..7 -)
     * Scale: 1
     * Offset: 0
     */
    uint8_t cluster_prob_of_exist_5;

    /**
     * Range: 0..254 (-30..97 dbsm)
     * Scale: 0.5
     * Offset: -30
     */
    uint8_t cluster_rcs_5;

    /**
     * Range: 0..510 (-200..55 db)
     * Scale: 0.5
     * Offset: -200
     */
    uint16_t cluster_power_5;

    /**
     * Range: 0..510 (-10..245 db)
     * Scale: 0.5
     * Offset: -10
     */
    uint16_t cluster_snr_5;
};

/**
 * Signals in message Cluster_General_Information_FR.
 *
 * All signal values are as on the CAN bus.
 */
struct sr439_cluster_general_information_fr_t {
    /**
     * Range: 0..255 (0..255 -)
     * Scale: 1
     * Offset: 0
     */
    uint8_t cluster_id_1;

    /**
     * Range: 0..12000 (0..120 m)
     * Scale: 0.01
     * Offset: 0
     */
    uint16_t cluster_range_1;

    /**
     * Range: 0..6666 (-111.11..55.55 m/s)
     * Scale: 0.025
     * Offset: -111.11
     */
    uint16_t cluster_velocity_1;

    /**
     * Range: 0..3600 (-90..90 deg)
     * Scale: 0.05
     * Offset: -90
     */
    uint16_t cluster_azimuth_1;

    /**
     * Range: 0..1000 (-25..25 deg)
     * Scale: 0.05
     * Offset: -25
     */
    uint16_t cluster_elevation_1;

    /**
     * Range: 0..3 (0..3 -)
     * Scale: 1
     * Offset: 0
     */
    uint8_t cluster_dyn_prop_1;

    /**
     * Range: 0..7 (0..7 -)
     * Scale: 1
     * Offset: 0
     */
    uint8_t cluster_prob_of_exist_1;

    /**
     * Range: 0..254 (-30..97 dbsm)
     * Scale: 0.5
     * Offset: -30
     */
    uint8_t cluster_rcs_1;

    /**
     * Range: 0..510 (-200..55 db)
     * Scale: 0.5
     * Offset: -200
     */
    uint16_t cluster_power_1;

    /**
     * Range: 0..510 (-10..245 db)
     * Scale: 0.5
     * Offset: -10
     */
    uint16_t cluster_snr_1;

    /**
     * Range: 0..255 (0..255 -)
     * Scale: 1
     * Offset: 0
     */
    uint8_t cluster_id_2;

    /**
     * Range: 0..12000 (0..120 m)
     * Scale: 0.01
     * Offset: 0
     */
    uint16_t cluster_range_2;

    /**
     * Range: 0..6666 (-111.11..55.55 m/s)
     * Scale: 0.025
     * Offset: -111.11
     */
    uint16_t cluster_velocity_2;

    /**
     * Range: 0..3600 (-90..90 deg)
     * Scale: 0.05
     * Offset: -90
     */
    uint16_t cluster_azimuth_2;

    /**
     * Range: 0..1000 (-25..25 deg)
     * Scale: 0.05
     * Offset: -25
     */
    uint16_t cluster_elevation_2;

    /**
     * Range: 0..3 (0..3 -)
     * Scale: 1
     * Offset: 0
     */
    uint8_t cluster_dyn_prop_2;

    /**
     * Range: 0..7 (0..7 -)
     * Scale: 1
     * Offset: 0
     */
    uint8_t cluster_prob_of_exist_2;

    /**
     * Range: 0..254 (-30..97 dbsm)
     * Scale: 0.5
     * Offset: -30
     */
    uint8_t cluster_rcs_2;

    /**
     * Range: 0..510 (-200..55 db)
     * Scale: 0.5
     * Offset: -200
     */
    uint16_t cluster_power_2;

    /**
     * Range: 0..510 (-10..245 db)
     * Scale: 0.5
     * Offset: -10
     */
    uint16_t cluster_snr_2;

    /**
     * Range: 0..255 (0..255 -)
     * Scale: 1
     * Offset: 0
     */
    uint8_t cluster_id_3;

    /**
     * Range: 0..12000 (0..120 m)
     * Scale: 0.01
     * Offset: 0
     */
    uint16_t cluster_range_3;

    /**
     * Range: 0..6666 (-111.11..55.55 m/s)
     * Scale: 0.025
     * Offset: -111.11
     */
    uint16_t cluster_velocity_3;

    /**
     * Range: 0..3600 (-90..90 deg)
     * Scale: 0.05
     * Offset: -90
     */
    uint16_t cluster_azimuth_3;

    /**
     * Range: 0..1000 (-25..25 deg)
     * Scale: 0.05
     * Offset: -25
     */
    uint16_t cluster_elevation_3;

    /**
     * Range: 0..3 (0..3 -)
     * Scale: 1
     * Offset: 0
     */
    uint8_t cluster_dyn_prop_3;

    /**
     * Range: 0..7 (0..7 -)
     * Scale: 1
     * Offset: 0
     */
    uint8_t cluster_prob_of_exist_3;

    /**
     * Range: 0..254 (-30..97 dbsm)
     * Scale: 0.5
     * Offset: -30
     */
    uint8_t cluster_rcs_3;

    /**
     * Range: 0..510 (-200..55 db)
     * Scale: 0.5
     * Offset: -200
     */
    uint16_t cluster_power_3;

    /**
     * Range: 0..510 (-10..245 db)
     * Scale: 0.5
     * Offset: -10
     */
    uint16_t cluster_snr_3;

    /**
     * Range: 0..255 (0..255 -)
     * Scale: 1
     * Offset: 0
     */
    uint8_t cluster_id_4;

    /**
     * Range: 0..12000 (0..120 m)
     * Scale: 0.01
     * Offset: 0
     */
    uint16_t cluster_range_4;

    /**
     * Range: 0..6666 (-111.11..55.55 m/s)
     * Scale: 0.025
     * Offset: -111.11
     */
    uint16_t cluster_velocity_4;

    /**
     * Range: 0..3600 (-90..90 deg)
     * Scale: 0.05
     * Offset: -90
     */
    uint16_t cluster_azimuth_4;

    /**
     * Range: 0..1000 (-25..25 deg)
     * Scale: 0.05
     * Offset: -25
     */
    uint16_t cluster_elevation_4;

    /**
     * Range: 0..3 (0..3 -)
     * Scale: 1
     * Offset: 0
     */
    uint8_t cluster_dyn_prop_4;

    /**
     * Range: 0..7 (0..7 -)
     * Scale: 1
     * Offset: 0
     */
    uint8_t cluster_prob_of_exist_4;

    /**
     * Range: 0..254 (-30..97 dbsm)
     * Scale: 0.5
     * Offset: -30
     */
    uint8_t cluster_rcs_4;

    /**
     * Range: 0..510 (-200..55 db)
     * Scale: 0.5
     * Offset: -200
     */
    uint16_t cluster_power_4;

    /**
     * Range: 0..510 (-10..245 db)
     * Scale: 0.5
     * Offset: -10
     */
    uint16_t cluster_snr_4;

    /**
     * Range: 0..255 (0..255 -)
     * Scale: 1
     * Offset: 0
     */
    uint8_t cluster_id_5;

    /**
     * Range: 0..12000 (0..120 m)
     * Scale: 0.01
     * Offset: 0
     */
    uint16_t cluster_range_5;

    /**
     * Range: 0..6666 (-111.11..55.55 m/s)
     * Scale: 0.025
     * Offset: -111.11
     */
    uint16_t cluster_velocity_5;

    /**
     * Range: 0..3600 (-90..90 deg)
     * Scale: 0.05
     * Offset: -90
     */
    uint16_t cluster_azimuth_5;

    /**
     * Range: 0..1000 (-25..25 deg)
     * Scale: 0.05
     * Offset: -25
     */
    uint16_t cluster_elevation_5;

    /**
     * Range: 0..3 (0..3 -)
     * Scale: 1
     * Offset: 0
     */
    uint8_t cluster_dyn_prop_5;

    /**
     * Range: 0..7 (0..7 -)
     * Scale: 1
     * Offset: 0
     */
    uint8_t cluster_prob_of_exist_5;

    /**
     * Range: 0..254 (-30..97 dbsm)
     * Scale: 0.5
     * Offset: -30
     */
    uint8_t cluster_rcs_5;

    /**
     * Range: 0..510 (-200..55 db)
     * Scale: 0.5
     * Offset: -200
     */
    uint16_t cluster_power_5;

    /**
     * Range: 0..510 (-10..245 db)
     * Scale: 0.5
     * Offset: -10
     */
    uint16_t cluster_snr_5;
};

/**
 * Signals in message Cluster_General_Information_FL.
 *
 * All signal values are as on the CAN bus.
 */
struct sr439_cluster_general_information_fl_t {
    /**
     * Range: 0..255 (0..255 -)
     * Scale: 1
     * Offset: 0
     */
    uint8_t cluster_id_1;

    /**
     * Range: 0..12000 (0..120 m)
     * Scale: 0.01
     * Offset: 0
     */
    uint16_t cluster_range_1;

    /**
     * Range: 0..6666 (-111.11..55.55 m/s)
     * Scale: 0.025
     * Offset: -111.11
     */
    uint16_t cluster_velocity_1;

    /**
     * Range: 0..3600 (-90..90 deg)
     * Scale: 0.05
     * Offset: -90
     */
    uint16_t cluster_azimuth_1;

    /**
     * Range: 0..1000 (-25..25 deg)
     * Scale: 0.05
     * Offset: -25
     */
    uint16_t cluster_elevation_1;

    /**
     * Range: 0..3 (0..3 -)
     * Scale: 1
     * Offset: 0
     */
    uint8_t cluster_dyn_prop_1;

    /**
     * Range: 0..7 (0..7 -)
     * Scale: 1
     * Offset: 0
     */
    uint8_t cluster_prob_of_exist_1;

    /**
     * Range: 0..254 (-30..97 dbsm)
     * Scale: 0.5
     * Offset: -30
     */
    uint8_t cluster_rcs_1;

    /**
     * Range: 0..510 (-200..55 db)
     * Scale: 0.5
     * Offset: -200
     */
    uint16_t cluster_power_1;

    /**
     * Range: 0..510 (-10..245 db)
     * Scale: 0.5
     * Offset: -10
     */
    uint16_t cluster_snr_1;

    /**
     * Range: 0..255 (0..255 -)
     * Scale: 1
     * Offset: 0
     */
    uint8_t cluster_id_2;

    /**
     * Range: 0..12000 (0..120 m)
     * Scale: 0.01
     * Offset: 0
     */
    uint16_t cluster_range_2;

    /**
     * Range: 0..6666 (-111.11..55.55 m/s)
     * Scale: 0.025
     * Offset: -111.11
     */
    uint16_t cluster_velocity_2;

    /**
     * Range: 0..3600 (-90..90 deg)
     * Scale: 0.05
     * Offset: -90
     */
    uint16_t cluster_azimuth_2;

    /**
     * Range: 0..1000 (-25..25 deg)
     * Scale: 0.05
     * Offset: -25
     */
    uint16_t cluster_elevation_2;

    /**
     * Range: 0..3 (0..3 -)
     * Scale: 1
     * Offset: 0
     */
    uint8_t cluster_dyn_prop_2;

    /**
     * Range: 0..7 (0..7 -)
     * Scale: 1
     * Offset: 0
     */
    uint8_t cluster_prob_of_exist_2;

    /**
     * Range: 0..254 (-30..97 dbsm)
     * Scale: 0.5
     * Offset: -30
     */
    uint8_t cluster_rcs_2;

    /**
     * Range: 0..510 (-200..55 db)
     * Scale: 0.5
     * Offset: -200
     */
    uint16_t cluster_power_2;

    /**
     * Range: 0..510 (-10..245 db)
     * Scale: 0.5
     * Offset: -10
     */
    uint16_t cluster_snr_2;

    /**
     * Range: 0..255 (0..255 -)
     * Scale: 1
     * Offset: 0
     */
    uint8_t cluster_id_3;

    /**
     * Range: 0..12000 (0..120 m)
     * Scale: 0.01
     * Offset: 0
     */
    uint16_t cluster_range_3;

    /**
     * Range: 0..6666 (-111.11..55.55 m/s)
     * Scale: 0.025
     * Offset: -111.11
     */
    uint16_t cluster_velocity_3;

    /**
     * Range: 0..3600 (-90..90 deg)
     * Scale: 0.05
     * Offset: -90
     */
    uint16_t cluster_azimuth_3;

    /**
     * Range: 0..1000 (-25..25 deg)
     * Scale: 0.05
     * Offset: -25
     */
    uint16_t cluster_elevation_3;

    /**
     * Range: 0..3 (0..3 -)
     * Scale: 1
     * Offset: 0
     */
    uint8_t cluster_dyn_prop_3;

    /**
     * Range: 0..7 (0..7 -)
     * Scale: 1
     * Offset: 0
     */
    uint8_t cluster_prob_of_exist_3;

    /**
     * Range: 0..254 (-30..97 dbsm)
     * Scale: 0.5
     * Offset: -30
     */
    uint8_t cluster_rcs_3;

    /**
     * Range: 0..510 (-200..55 db)
     * Scale: 0.5
     * Offset: -200
     */
    uint16_t cluster_power_3;

    /**
     * Range: 0..510 (-10..245 db)
     * Scale: 0.5
     * Offset: -10
     */
    uint16_t cluster_snr_3;

    /**
     * Range: 0..255 (0..255 -)
     * Scale: 1
     * Offset: 0
     */
    uint8_t cluster_id_4;

    /**
     * Range: 0..12000 (0..120 m)
     * Scale: 0.01
     * Offset: 0
     */
    uint16_t cluster_range_4;

    /**
     * Range: 0..6666 (-111.11..55.55 m/s)
     * Scale: 0.025
     * Offset: -111.11
     */
    uint16_t cluster_velocity_4;

    /**
     * Range: 0..3600 (-90..90 deg)
     * Scale: 0.05
     * Offset: -90
     */
    uint16_t cluster_azimuth_4;

    /**
     * Range: 0..1000 (-25..25 deg)
     * Scale: 0.05
     * Offset: -25
     */
    uint16_t cluster_elevation_4;

    /**
     * Range: 0..3 (0..3 -)
     * Scale: 1
     * Offset: 0
     */
    uint8_t cluster_dyn_prop_4;

    /**
     * Range: 0..7 (0..7 -)
     * Scale: 1
     * Offset: 0
     */
    uint8_t cluster_prob_of_exist_4;

    /**
     * Range: 0..254 (-30..97 dbsm)
     * Scale: 0.5
     * Offset: -30
     */
    uint8_t cluster_rcs_4;

    /**
     * Range: 0..510 (-200..55 db)
     * Scale: 0.5
     * Offset: -200
     */
    uint16_t cluster_power_4;

    /**
     * Range: 0..510 (-10..245 db)
     * Scale: 0.5
     * Offset: -10
     */
    uint16_t cluster_snr_4;

    /**
     * Range: 0..255 (0..255 -)
     * Scale: 1
     * Offset: 0
     */
    uint8_t cluster_id_5;

    /**
     * Range: 0..12000 (0..120 m)
     * Scale: 0.01
     * Offset: 0
     */
    uint16_t cluster_range_5;

    /**
     * Range: 0..6666 (-111.11..55.55 m/s)
     * Scale: 0.025
     * Offset: -111.11
     */
    uint16_t cluster_velocity_5;

    /**
     * Range: 0..3600 (-90..90 deg)
     * Scale: 0.05
     * Offset: -90
     */
    uint16_t cluster_azimuth_5;

    /**
     * Range: 0..1000 (-25..25 deg)
     * Scale: 0.05
     * Offset: -25
     */
    uint16_t cluster_elevation_5;

    /**
     * Range: 0..3 (0..3 -)
     * Scale: 1
     * Offset: 0
     */
    uint8_t cluster_dyn_prop_5;

    /**
     * Range: 0..7 (0..7 -)
     * Scale: 1
     * Offset: 0
     */
    uint8_t cluster_prob_of_exist_5;

    /**
     * Range: 0..254 (-30..97 dbsm)
     * Scale: 0.5
     * Offset: -30
     */
    uint8_t cluster_rcs_5;

    /**
     * Range: 0..510 (-200..55 db)
     * Scale: 0.5
     * Offset: -200
     */
    uint16_t cluster_power_5;

    /**
     * Range: 0..510 (-10..245 db)
     * Scale: 0.5
     * Offset: -10
     */
    uint16_t cluster_snr_5;
};

/**
 * Signals in message Obj_Collision_Info_RL.
 *
 * All signal values are as on the CAN bus.
 */
struct sr439_obj_collision_info_rl_t {
    /**
     * Range: 0..255 (0..255 -)
     * Scale: 1
     * Offset: 0
     */
    uint8_t obj_id;

    /**
     * Range: 0..9 (0..9 -)
     * Scale: 1
     * Offset: 0
     */
    uint8_t obj_ref_point;

    /**
     * Range: 0..7 (0..7 -)
     * Scale: 1
     * Offset: 0
     */
    uint8_t obj_track_state;

    /**
     * Range: 0..31 (0..31 -)
     * Scale: 1
     * Offset: 0
     */
    uint8_t obj_corner_rel_wid;

    /**
     * Range: 0..63 (0..63 -)
     * Scale: 1
     * Offset: 0
     */
    uint8_t obj_corner_rel_len;

    /**
     * Range: 0..628 (-3.14..3.14 rad/s)
     * Scale: 0.01
     * Offset: -3.14
     */
    uint16_t obj_yaw_rate;
};

/**
 * Signals in message Obj_Extended_Info_RL.
 *
 * All signal values are as on the CAN bus.
 */
struct sr439_obj_extended_info_rl_t {
    /**
     * Range: 0..255 (0..255 -)
     * Scale: 1
     * Offset: 0
     */
    uint8_t obj_id;

    /**
     * Range: 0..2000 (-40..40 m/s^2)
     * Scale: 0.04
     * Offset: -40
     */
    uint16_t obj_arel_lon;

    /**
     * Range: 0..2000 (-40..40 m/s^2)
     * Scale: 0.04
     * Offset: -40
     */
    uint16_t obj_arel_lat;

    /**
     * Range: 0..7 (0..7 -)
     * Scale: 1
     * Offset: 0
     */
    uint8_t obj_class;

    /**
     * Range: 0..900 (-180..180 deg)
     * Scale: 0.4
     * Offset: -180
     */
    uint16_t obj_orien_angle;

    /**
     * Range: 0..31 (0..3.1 m)
     * Scale: 0.1
     * Offset: 0
     */
    uint8_t obj_width;

    /**
     * Range: 0..255 (0..25.5 m)
     * Scale: 0.1
     * Offset: 0
     */
    uint8_t obj_length;

    /**
     * Range: 0..63 (-10..21.5 -)
     * Scale: 0.5
     * Offset: -10
     */
    uint8_t obj_height;
};

/**
 * Signals in message Obj_Quality_Info_RL.
 *
 * All signal values are as on the CAN bus.
 */
struct sr439_obj_quality_info_rl_t {
    /**
     * Range: 0..255 (0..255 -)
     * Scale: 1
     * Offset: 0
     */
    uint8_t obj_id;

    /**
     * Range: 0..31 (0..31 -)
     * Scale: 1
     * Offset: 0
     */
    uint8_t obj_dist_lon_rms;

    /**
     * Range: 0..31 (0..31 -)
     * Scale: 1
     * Offset: 0
     */
    uint8_t obj_dist_lat_rms;

    /**
     * Range: 0..31 (0..31 -)
     * Scale: 1
     * Offset: 0
     */
    uint8_t obj_vel_lon_rms;

    /**
     * Range: 0..31 (0..31 -)
     * Scale: 1
     * Offset: 0
     */
    uint8_t obj_vel_lat_rms;

    /**
     * Range: 0..31 (0..31 -)
     * Scale: 1
     * Offset: 0
     */
    uint8_t obj_acc_lon_rms;

    /**
     * Range: 0..31 (0..31 -)
     * Scale: 1
     * Offset: 0
     */
    uint8_t obj_acc_lat_rms;

    /**
     * Range: 0..1 (0..1 -)
     * Scale: 1
     * Offset: 0
     */
    uint8_t obj_cipv;

    /**
     * Range: 0..7 (0..7 -)
     * Scale: 1
     * Offset: 0
     */
    uint8_t obj_prob_of_class;

    /**
     * Range: 0..7 (0..7 -)
     * Scale: 1
     * Offset: 0
     */
    uint8_t obj_prob_of_exist;

    /**
     * Range: 0..7 (0..7 -)
     * Scale: 1
     * Offset: 0
     */
    uint8_t obj_meas_state;
};

/**
 * Signals in message Radar_Rear_ADAS.
 *
 * All signal values are as on the CAN bus.
 */
struct sr439_radar_rear_adas_t {
    /**
     * Range: 0..1 (0..1 -)
     * Scale: 1
     * Offset: 0
     */
    uint8_t adas_bsd_l_flg;

    /**
     * Range: 0..1 (0..1 -)
     * Scale: 1
     * Offset: 0
     */
    uint8_t adas_bsd_r_flg;

    /**
     * Range: 0..1 (0..1 -)
     * Scale: 1
     * Offset: 0
     */
    uint8_t adas_dow_l_flg;

    /**
     * Range: 0..1 (0..1 -)
     * Scale: 1
     * Offset: 0
     */
    uint8_t adas_dow_r_flg;

    /**
     * Range: 0..1 (0..1 -)
     * Scale: 1
     * Offset: 0
     */
    uint8_t adas_lca_l_flg;

    /**
     * Range: 0..1 (0..1 -)
     * Scale: 1
     * Offset: 0
     */
    uint8_t adas_lca_r_flg;

    /**
     * Range: 0..1 (0..1 -)
     * Scale: 1
     * Offset: 0
     */
    uint8_t adas_rcta_l_flg;

    /**
     * Range: 0..1 (0..1 -)
     * Scale: 1
     * Offset: 0
     */
    uint8_t adas_rcta_r_flg;

    /**
     * Range: 0..1 (0..1 -)
     * Scale: 1
     * Offset: 0
     */
    uint8_t adas_rctb_l_flg;

    /**
     * Range: 0..1 (0..1 -)
     * Scale: 1
     * Offset: 0
     */
    uint8_t adas_rctb_r_flg;

    /**
     * Range: 0..1 (0..1 -)
     * Scale: 1
     * Offset: 0
     */
    uint8_t adas_fcta_l_flg;

    /**
     * Range: 0..1 (0..1 -)
     * Scale: 1
     * Offset: 0
     */
    uint8_t adas_fcta_r_flg;

    /**
     * Range: 0..1 (0..1 -)
     * Scale: 1
     * Offset: 0
     */
    uint8_t adas_fctb_l_flg;

    /**
     * Range: 0..1 (0..1 -)
     * Scale: 1
     * Offset: 0
     */
    uint8_t adas_fctb_r_flg;

    /**
     * Range: 0..1 (0..1 -)
     * Scale: 1
     * Offset: 0
     */
    uint8_t adas_fcw_flg;

    /**
     * Range: 0..1 (0..1 -)
     * Scale: 1
     * Offset: 0
     */
    uint8_t adas_rcw_flg;

    /**
     * Range: 0..2 (0..2 -)
     * Scale: 1
     * Offset: 0
     */
    uint8_t adas_bsd_l_w;

    /**
     * Range: 0..2 (0..2 -)
     * Scale: 1
     * Offset: 0
     */
    uint8_t adas_bsd_r_w;

    /**
     * Range: 0..2 (0..2 -)
     * Scale: 1
     * Offset: 0
     */
    uint8_t adas_lca_l_w;

    /**
     * Range: 0..2 (0..2 -)
     * Scale: 1
     * Offset: 0
     */
    uint8_t adas_lca_r_w;

    /**
     * Range: 0..2 (0..2 -)
     * Scale: 1
     * Offset: 0
     */
    uint8_t adas_dow_l_w;

    /**
     * Range: 0..2 (0..2 -)
     * Scale: 1
     * Offset: 0
     */
    uint8_t adas_dow_r_w;

    /**
     * Range: 0..2 (0..2 -)
     * Scale: 1
     * Offset: 0
     */
    uint8_t adas_rcta_l_w;

    /**
     * Range: 0..2 (0..2 -)
     * Scale: 1
     * Offset: 0
     */
    uint8_t adas_rcta_r_w;

    /**
     * Range: 0..2 (0..2 -)
     * Scale: 1
     * Offset: 0
     */
    uint8_t adas_rctb_l_w;

    /**
     * Range: 0..2 (0..2 -)
     * Scale: 1
     * Offset: 0
     */
    uint8_t adas_rctb_r_w;

    /**
     * Range: 0..2 (0..2 -)
     * Scale: 1
     * Offset: 0
     */
    uint8_t adas_fcta_l_w;

    /**
     * Range: 0..2 (0..2 -)
     * Scale: 1
     * Offset: 0
     */
    uint8_t adas_fcta_r_w;

    /**
     * Range: 0..2 (0..2 -)
     * Scale: 1
     * Offset: 0
     */
    uint8_t adas_fctb_l_w;

    /**
     * Range: 0..2 (0..2 -)
     * Scale: 1
     * Offset: 0
     */
    uint8_t adas_fctb_r_w;

    /**
     * Range: 0..2 (0..2 -)
     * Scale: 1
     * Offset: 0
     */
    uint8_t adas_fcw_w;

    /**
     * Range: 0..2 (0..2 -)
     * Scale: 1
     * Offset: 0
     */
    uint8_t adas_rcw_w;

    /**
     * Range: -32768..32767 (-32768..32767 ms)
     * Scale: 1
     * Offset: 0
     */
    int16_t adas_time_diff;
};

/**
 * Signals in message Obj_General_Info_RL.
 *
 * All signal values are as on the CAN bus.
 */
struct sr439_obj_general_info_rl_t {
    /**
     * Range: 0..255 (0..255 -)
     * Scale: 1
     * Offset: 0
     */
    uint8_t obj_id;

    /**
     * Range: 0..3360 (-60..150 m)
     * Scale: 0.0625
     * Offset: -60
     */
    uint16_t obj_dist_long;

    /**
     * Range: 0..32804 (-128..127.875 m)
     * Scale: 0.0078
     * Offset: -128
     */
    uint16_t obj_dist_lat;

    /**
     * Range: 0..15 (0..15 -)
     * Scale: 1
     * Offset: 0
     */
    uint8_t obj_dyn_prop;

    /**
     * Range: 0..4095 (-102..102.75 m/s)
     * Scale: 0.05
     * Offset: -102
     */
    uint16_t obj_vrel_long;

    /**
     * Range: 0..4095 (-102..102.75 m/s)
     * Scale: 0.05
     * Offset: -102
     */
    uint16_t obj_vrel_lat;
};

/**
 * Signals in message Obj_0_Status_RL.
 *
 * All signal values are as on the CAN bus.
 */
struct sr439_obj_0_status_rl_t {
    /**
     * Range: 0..255 (0..255 -)
     * Scale: 1
     * Offset: 0
     */
    uint8_t obj_nof_object;

    /**
     * Range: 0..65535 (0..65535 -)
     * Scale: 1
     * Offset: 0
     */
    uint16_t obj_meas_counter;

    /**
     * Range: 0..15 (0..15 -)
     * Scale: 1
     * Offset: 0
     */
    uint8_t obj_interface_version;

    /**
     * Range: 0..3 (0..3 -)
     * Scale: 1
     * Offset: 0
     */
    uint8_t obj_bsd_warning;

    /**
     * Range: 0..3 (0..3 -)
     * Scale: 1
     * Offset: 0
     */
    uint8_t obj_lca_warning;

    /**
     * Range: 0..3 (0..3 -)
     * Scale: 1
     * Offset: 0
     */
    uint8_t obj_dow_warning;

    /**
     * Range: 0..3 (0..3 -)
     * Scale: 1
     * Offset: 0
     */
    uint8_t obj_rcta_warning;

    /**
     * Range: 0..3 (0..3 -)
     * Scale: 1
     * Offset: 0
     */
    uint8_t obj_rctb_warning;

    /**
     * Range: 0..3 (0..3 -)
     * Scale: 1
     * Offset: 0
     */
    uint8_t obj_fcta_warning;

    /**
     * Range: 0..3 (0..3 -)
     * Scale: 1
     * Offset: 0
     */
    uint8_t obj_fctb_warning;

    /**
     * Range: 0..255 (0..255 -)
     * Scale: 1
     * Offset: 0
     */
    uint8_t obj_cipvid;
};

/**
 * Signals in message Cluster_General_Information_RL.
 *
 * All signal values are as on the CAN bus.
 */
struct sr439_cluster_general_information_rl_t {
    /**
     * Range: 0..255 (0..255 -)
     * Scale: 1
     * Offset: 0
     */
    uint8_t cluster_id_1;

    /**
     * Range: 0..12000 (0..120 m)
     * Scale: 0.01
     * Offset: 0
     */
    uint16_t cluster_range_1;

    /**
     * Range: 0..6666 (-111.11..55.55 m/s)
     * Scale: 0.025
     * Offset: -111.11
     */
    uint16_t cluster_velocity_1;

    /**
     * Range: 0..3600 (-90..90 deg)
     * Scale: 0.05
     * Offset: -90
     */
    uint16_t cluster_azimuth_1;

    /**
     * Range: 0..1000 (-25..25 deg)
     * Scale: 0.05
     * Offset: -25
     */
    uint16_t cluster_elevation_1;

    /**
     * Range: 0..3 (0..3 -)
     * Scale: 1
     * Offset: 0
     */
    uint8_t cluster_dyn_prop_1;

    /**
     * Range: 0..7 (0..7 -)
     * Scale: 1
     * Offset: 0
     */
    uint8_t cluster_prob_of_exist_1;

    /**
     * Range: 0..254 (-30..97 dbsm)
     * Scale: 0.5
     * Offset: -30
     */
    uint8_t cluster_rcs_1;

    /**
     * Range: 0..510 (-200..55 db)
     * Scale: 0.5
     * Offset: -200
     */
    uint16_t cluster_power_1;

    /**
     * Range: 0..510 (-10..245 db)
     * Scale: 0.5
     * Offset: -10
     */
    uint16_t cluster_snr_1;

    /**
     * Range: 0..255 (0..255 -)
     * Scale: 1
     * Offset: 0
     */
    uint8_t cluster_id_2;

    /**
     * Range: 0..12000 (0..120 m)
     * Scale: 0.01
     * Offset: 0
     */
    uint16_t cluster_range_2;

    /**
     * Range: 0..6666 (-111.11..55.55 m/s)
     * Scale: 0.025
     * Offset: -111.11
     */
    uint16_t cluster_velocity_2;

    /**
     * Range: 0..3600 (-90..90 deg)
     * Scale: 0.05
     * Offset: -90
     */
    uint16_t cluster_azimuth_2;

    /**
     * Range: 0..1000 (-25..25 deg)
     * Scale: 0.05
     * Offset: -25
     */
    uint16_t cluster_elevation_2;

    /**
     * Range: 0..3 (0..3 -)
     * Scale: 1
     * Offset: 0
     */
    uint8_t cluster_dyn_prop_2;

    /**
     * Range: 0..7 (0..7 -)
     * Scale: 1
     * Offset: 0
     */
    uint8_t cluster_prob_of_exist_2;

    /**
     * Range: 0..254 (-30..97 dbsm)
     * Scale: 0.5
     * Offset: -30
     */
    uint8_t cluster_rcs_2;

    /**
     * Range: 0..510 (-200..55 db)
     * Scale: 0.5
     * Offset: -200
     */
    uint16_t cluster_power_2;

    /**
     * Range: 0..510 (-10..245 db)
     * Scale: 0.5
     * Offset: -10
     */
    uint16_t cluster_snr_2;

    /**
     * Range: 0..255 (0..255 -)
     * Scale: 1
     * Offset: 0
     */
    uint8_t cluster_id_3;

    /**
     * Range: 0..12000 (0..120 m)
     * Scale: 0.01
     * Offset: 0
     */
    uint16_t cluster_range_3;

    /**
     * Range: 0..6666 (-111.11..55.55 m/s)
     * Scale: 0.025
     * Offset: -111.11
     */
    uint16_t cluster_velocity_3;

    /**
     * Range: 0..3600 (-90..90 deg)
     * Scale: 0.05
     * Offset: -90
     */
    uint16_t cluster_azimuth_3;

    /**
     * Range: 0..1000 (-25..25 deg)
     * Scale: 0.05
     * Offset: -25
     */
    uint16_t cluster_elevation_3;

    /**
     * Range: 0..3 (0..3 -)
     * Scale: 1
     * Offset: 0
     */
    uint8_t cluster_dyn_prop_3;

    /**
     * Range: 0..7 (0..7 -)
     * Scale: 1
     * Offset: 0
     */
    uint8_t cluster_prob_of_exist_3;

    /**
     * Range: 0..254 (-30..97 dbsm)
     * Scale: 0.5
     * Offset: -30
     */
    uint8_t cluster_rcs_3;

    /**
     * Range: 0..510 (-200..55 db)
     * Scale: 0.5
     * Offset: -200
     */
    uint16_t cluster_power_3;

    /**
     * Range: 0..510 (-10..245 db)
     * Scale: 0.5
     * Offset: -10
     */
    uint16_t cluster_snr_3;

    /**
     * Range: 0..255 (0..255 -)
     * Scale: 1
     * Offset: 0
     */
    uint8_t cluster_id_4;

    /**
     * Range: 0..12000 (0..120 m)
     * Scale: 0.01
     * Offset: 0
     */
    uint16_t cluster_range_4;

    /**
     * Range: 0..6666 (-111.11..55.55 m/s)
     * Scale: 0.025
     * Offset: -111.11
     */
    uint16_t cluster_velocity_4;

    /**
     * Range: 0..3600 (-90..90 deg)
     * Scale: 0.05
     * Offset: -90
     */
    uint16_t cluster_azimuth_4;

    /**
     * Range: 0..1000 (-25..25 deg)
     * Scale: 0.05
     * Offset: -25
     */
    uint16_t cluster_elevation_4;

    /**
     * Range: 0..3 (0..3 -)
     * Scale: 1
     * Offset: 0
     */
    uint8_t cluster_dyn_prop_4;

    /**
     * Range: 0..7 (0..7 -)
     * Scale: 1
     * Offset: 0
     */
    uint8_t cluster_prob_of_exist_4;

    /**
     * Range: 0..254 (-30..97 dbsm)
     * Scale: 0.5
     * Offset: -30
     */
    uint8_t cluster_rcs_4;

    /**
     * Range: 0..510 (-200..55 db)
     * Scale: 0.5
     * Offset: -200
     */
    uint16_t cluster_power_4;

    /**
     * Range: 0..510 (-10..245 db)
     * Scale: 0.5
     * Offset: -10
     */
    uint16_t cluster_snr_4;

    /**
     * Range: 0..255 (0..255 -)
     * Scale: 1
     * Offset: 0
     */
    uint8_t cluster_id_5;

    /**
     * Range: 0..12000 (0..120 m)
     * Scale: 0.01
     * Offset: 0
     */
    uint16_t cluster_range_5;

    /**
     * Range: 0..6666 (-111.11..55.55 m/s)
     * Scale: 0.025
     * Offset: -111.11
     */
    uint16_t cluster_velocity_5;

    /**
     * Range: 0..3600 (-90..90 deg)
     * Scale: 0.05
     * Offset: -90
     */
    uint16_t cluster_azimuth_5;

    /**
     * Range: 0..1000 (-25..25 deg)
     * Scale: 0.05
     * Offset: -25
     */
    uint16_t cluster_elevation_5;

    /**
     * Range: 0..3 (0..3 -)
     * Scale: 1
     * Offset: 0
     */
    uint8_t cluster_dyn_prop_5;

    /**
     * Range: 0..7 (0..7 -)
     * Scale: 1
     * Offset: 0
     */
    uint8_t cluster_prob_of_exist_5;

    /**
     * Range: 0..254 (-30..97 dbsm)
     * Scale: 0.5
     * Offset: -30
     */
    uint8_t cluster_rcs_5;

    /**
     * Range: 0..510 (-200..55 db)
     * Scale: 0.5
     * Offset: -200
     */
    uint16_t cluster_power_5;

    /**
     * Range: 0..510 (-10..245 db)
     * Scale: 0.5
     * Offset: -10
     */
    uint16_t cluster_snr_5;
};

/**
 * Signals in message Cluster_Header_RL.
 *
 * All signal values are as on the CAN bus.
 */
struct sr439_cluster_header_rl_t {
    /**
     * Range: 0..3 (0..3 -)
     * Scale: 1
     * Offset: 0
     */
    uint8_t cluster_frame_type;

    /**
     * Range: 0..16777215 (0..16777215 -)
     * Scale: 1
     * Offset: 0
     */
    uint32_t cluster_frame_num;

    /**
     * Range: 0..255 (0..255 -)
     * Scale: 1
     * Offset: 0
     */
    uint8_t cluster_target_number;

    /**
     * Range: 0..1073741823 (0..1073741823 -)
     * Scale: 1
     * Offset: 0
     */
    uint32_t cluster_timestamp;

    /**
     * Range: 0..3 (0..3 -)
     * Scale: 1
     * Offset: 0
     */
    uint8_t cluster_radar_identify;

    /**
     * Range: 0..65535 (-327.68..327.67 km/h)
     * Scale: 0.01
     * Offset: -327.68
     */
    uint16_t cluster_vehicle_speed;

    /**
     * Range: 0..65535 (-327.68..327.67 deg/s)
     * Scale: 0.01
     * Offset: -327.68
     */
    uint16_t cluster_yaw_rate;

    /**
     * Range: 0..16 (0..16 -)
     * Scale: 1
     * Offset: 0
     */
    uint8_t cluster_gear_st;
};

/**
 * Pack message VehInfo2.
 *
 * @param[out] dst_p Buffer to pack the message into.
 * @param[in] src_p Data to pack.
 * @param[in] size Size of dst_p.
 *
 * @return Size of packed data, or negative error code.
 */
int sr439_veh_info2_pack(
    uint8_t *dst_p,
    const struct sr439_veh_info2_t *src_p,
    size_t size);

/**
 * Unpack message VehInfo2.
 *
 * @param[out] dst_p Object to unpack the message into.
 * @param[in] src_p Message to unpack.
 * @param[in] size Size of src_p.
 *
 * @return zero(0) or negative error code.
 */
int sr439_veh_info2_unpack(
    struct sr439_veh_info2_t *dst_p,
    const uint8_t *src_p,
    size_t size);

/**
 * Init message fields to default values from VehInfo2.
 *
 * @param[in] msg_p Message to init.
 *
 * @return zero(0) on success or (-1) in case of nullptr argument.
 */
int sr439_veh_info2_init(struct sr439_veh_info2_t *msg_p);

/**
 * Encode given signal by applying scaling and offset.
 *
 * @param[in] value Signal to encode.
 *
 * @return Encoded signal.
 */
uint8_t sr439_veh_info2_gear_state_now_encode(double value);

/**
 * Decode given signal by applying scaling and offset.
 *
 * @param[in] value Signal to decode.
 *
 * @return Decoded signal.
 */
double sr439_veh_info2_gear_state_now_decode(uint8_t value);

/**
 * Check that given signal is in allowed range.
 *
 * @param[in] value Signal to check.
 *
 * @return true if in range, false otherwise.
 */
bool sr439_veh_info2_gear_state_now_is_in_range(uint8_t value);

/**
 * Encode given signal by applying scaling and offset.
 *
 * @param[in] value Signal to encode.
 *
 * @return Encoded signal.
 */
uint8_t sr439_veh_info2_gear_sta_now_v_encode(double value);

/**
 * Decode given signal by applying scaling and offset.
 *
 * @param[in] value Signal to decode.
 *
 * @return Decoded signal.
 */
double sr439_veh_info2_gear_sta_now_v_decode(uint8_t value);

/**
 * Check that given signal is in allowed range.
 *
 * @param[in] value Signal to check.
 *
 * @return true if in range, false otherwise.
 */
bool sr439_veh_info2_gear_sta_now_v_is_in_range(uint8_t value);

/**
 * Encode given signal by applying scaling and offset.
 *
 * @param[in] value Signal to encode.
 *
 * @return Encoded signal.
 */
uint8_t sr439_veh_info2_ign_state_v_encode(double value);

/**
 * Decode given signal by applying scaling and offset.
 *
 * @param[in] value Signal to decode.
 *
 * @return Decoded signal.
 */
double sr439_veh_info2_ign_state_v_decode(uint8_t value);

/**
 * Check that given signal is in allowed range.
 *
 * @param[in] value Signal to check.
 *
 * @return true if in range, false otherwise.
 */
bool sr439_veh_info2_ign_state_v_is_in_range(uint8_t value);

/**
 * Encode given signal by applying scaling and offset.
 *
 * @param[in] value Signal to encode.
 *
 * @return Encoded signal.
 */
uint8_t sr439_veh_info2_ign_state_encode(double value);

/**
 * Decode given signal by applying scaling and offset.
 *
 * @param[in] value Signal to decode.
 *
 * @return Decoded signal.
 */
double sr439_veh_info2_ign_state_decode(uint8_t value);

/**
 * Check that given signal is in allowed range.
 *
 * @param[in] value Signal to check.
 *
 * @return true if in range, false otherwise.
 */
bool sr439_veh_info2_ign_state_is_in_range(uint8_t value);

/**
 * Pack message VehInfo1.
 *
 * @param[out] dst_p Buffer to pack the message into.
 * @param[in] src_p Data to pack.
 * @param[in] size Size of dst_p.
 *
 * @return Size of packed data, or negative error code.
 */
int sr439_veh_info1_pack(
    uint8_t *dst_p,
    const struct sr439_veh_info1_t *src_p,
    size_t size);

/**
 * Unpack message VehInfo1.
 *
 * @param[out] dst_p Object to unpack the message into.
 * @param[in] src_p Message to unpack.
 * @param[in] size Size of src_p.
 *
 * @return zero(0) or negative error code.
 */
int sr439_veh_info1_unpack(
    struct sr439_veh_info1_t *dst_p,
    const uint8_t *src_p,
    size_t size);

/**
 * Init message fields to default values from VehInfo1.
 *
 * @param[in] msg_p Message to init.
 *
 * @return zero(0) on success or (-1) in case of nullptr argument.
 */
int sr439_veh_info1_init(struct sr439_veh_info1_t *msg_p);

/**
 * Encode given signal by applying scaling and offset.
 *
 * @param[in] value Signal to encode.
 *
 * @return Encoded signal.
 */
uint8_t sr439_veh_info1_veh_speed_v_encode(double value);

/**
 * Decode given signal by applying scaling and offset.
 *
 * @param[in] value Signal to decode.
 *
 * @return Decoded signal.
 */
double sr439_veh_info1_veh_speed_v_decode(uint8_t value);

/**
 * Check that given signal is in allowed range.
 *
 * @param[in] value Signal to check.
 *
 * @return true if in range, false otherwise.
 */
bool sr439_veh_info1_veh_speed_v_is_in_range(uint8_t value);

/**
 * Encode given signal by applying scaling and offset.
 *
 * @param[in] value Signal to encode.
 *
 * @return Encoded signal.
 */
uint8_t sr439_veh_info1_yaw_rat_v_encode(double value);

/**
 * Decode given signal by applying scaling and offset.
 *
 * @param[in] value Signal to decode.
 *
 * @return Decoded signal.
 */
double sr439_veh_info1_yaw_rat_v_decode(uint8_t value);

/**
 * Check that given signal is in allowed range.
 *
 * @param[in] value Signal to check.
 *
 * @return true if in range, false otherwise.
 */
bool sr439_veh_info1_yaw_rat_v_is_in_range(uint8_t value);

/**
 * Encode given signal by applying scaling and offset.
 *
 * @param[in] value Signal to encode.
 *
 * @return Encoded signal.
 */
uint8_t sr439_veh_info1_str_angle_v_encode(double value);

/**
 * Decode given signal by applying scaling and offset.
 *
 * @param[in] value Signal to decode.
 *
 * @return Decoded signal.
 */
double sr439_veh_info1_str_angle_v_decode(uint8_t value);

/**
 * Check that given signal is in allowed range.
 *
 * @param[in] value Signal to check.
 *
 * @return true if in range, false otherwise.
 */
bool sr439_veh_info1_str_angle_v_is_in_range(uint8_t value);

/**
 * Encode given signal by applying scaling and offset.
 *
 * @param[in] value Signal to encode.
 *
 * @return Encoded signal.
 */
uint16_t sr439_veh_info1_veh_speed_in_encode(double value);

/**
 * Decode given signal by applying scaling and offset.
 *
 * @param[in] value Signal to decode.
 *
 * @return Decoded signal.
 */
double sr439_veh_info1_veh_speed_in_decode(uint16_t value);

/**
 * Check that given signal is in allowed range.
 *
 * @param[in] value Signal to check.
 *
 * @return true if in range, false otherwise.
 */
bool sr439_veh_info1_veh_speed_in_is_in_range(uint16_t value);

/**
 * Encode given signal by applying scaling and offset.
 *
 * @param[in] value Signal to encode.
 *
 * @return Encoded signal.
 */
uint16_t sr439_veh_info1_yaw_rate_in_encode(double value);

/**
 * Decode given signal by applying scaling and offset.
 *
 * @param[in] value Signal to decode.
 *
 * @return Decoded signal.
 */
double sr439_veh_info1_yaw_rate_in_decode(uint16_t value);

/**
 * Check that given signal is in allowed range.
 *
 * @param[in] value Signal to check.
 *
 * @return true if in range, false otherwise.
 */
bool sr439_veh_info1_yaw_rate_in_is_in_range(uint16_t value);

/**
 * Encode given signal by applying scaling and offset.
 *
 * @param[in] value Signal to encode.
 *
 * @return Encoded signal.
 */
uint16_t sr439_veh_info1_str_angle_encode(double value);

/**
 * Decode given signal by applying scaling and offset.
 *
 * @param[in] value Signal to decode.
 *
 * @return Decoded signal.
 */
double sr439_veh_info1_str_angle_decode(uint16_t value);

/**
 * Check that given signal is in allowed range.
 *
 * @param[in] value Signal to check.
 *
 * @return true if in range, false otherwise.
 */
bool sr439_veh_info1_str_angle_is_in_range(uint16_t value);

/**
 * Pack message VehInfo_Radar1.
 *
 * @param[out] dst_p Buffer to pack the message into.
 * @param[in] src_p Data to pack.
 * @param[in] size Size of dst_p.
 *
 * @return Size of packed data, or negative error code.
 */
int sr439_veh_info_radar1_pack(
    uint8_t *dst_p,
    const struct sr439_veh_info_radar1_t *src_p,
    size_t size);

/**
 * Unpack message VehInfo_Radar1.
 *
 * @param[out] dst_p Object to unpack the message into.
 * @param[in] src_p Message to unpack.
 * @param[in] size Size of src_p.
 *
 * @return zero(0) or negative error code.
 */
int sr439_veh_info_radar1_unpack(
    struct sr439_veh_info_radar1_t *dst_p,
    const uint8_t *src_p,
    size_t size);

/**
 * Init message fields to default values from VehInfo_Radar1.
 *
 * @param[in] msg_p Message to init.
 *
 * @return zero(0) on success or (-1) in case of nullptr argument.
 */
int sr439_veh_info_radar1_init(struct sr439_veh_info_radar1_t *msg_p);

/**
 * Encode given signal by applying scaling and offset.
 *
 * @param[in] value Signal to encode.
 *
 * @return Encoded signal.
 */
uint16_t sr439_veh_info_radar1_steer_angle_encode(double value);

/**
 * Decode given signal by applying scaling and offset.
 *
 * @param[in] value Signal to decode.
 *
 * @return Decoded signal.
 */
double sr439_veh_info_radar1_steer_angle_decode(uint16_t value);

/**
 * Check that given signal is in allowed range.
 *
 * @param[in] value Signal to check.
 *
 * @return true if in range, false otherwise.
 */
bool sr439_veh_info_radar1_steer_angle_is_in_range(uint16_t value);

/**
 * Encode given signal by applying scaling and offset.
 *
 * @param[in] value Signal to encode.
 *
 * @return Encoded signal.
 */
uint8_t sr439_veh_info_radar1_gear_sts_encode(double value);

/**
 * Decode given signal by applying scaling and offset.
 *
 * @param[in] value Signal to decode.
 *
 * @return Decoded signal.
 */
double sr439_veh_info_radar1_gear_sts_decode(uint8_t value);

/**
 * Check that given signal is in allowed range.
 *
 * @param[in] value Signal to check.
 *
 * @return true if in range, false otherwise.
 */
bool sr439_veh_info_radar1_gear_sts_is_in_range(uint8_t value);

/**
 * Encode given signal by applying scaling and offset.
 *
 * @param[in] value Signal to encode.
 *
 * @return Encoded signal.
 */
uint16_t sr439_veh_info_radar1_veh_speed_encode(double value);

/**
 * Decode given signal by applying scaling and offset.
 *
 * @param[in] value Signal to decode.
 *
 * @return Decoded signal.
 */
double sr439_veh_info_radar1_veh_speed_decode(uint16_t value);

/**
 * Check that given signal is in allowed range.
 *
 * @param[in] value Signal to check.
 *
 * @return true if in range, false otherwise.
 */
bool sr439_veh_info_radar1_veh_speed_is_in_range(uint16_t value);

/**
 * Encode given signal by applying scaling and offset.
 *
 * @param[in] value Signal to encode.
 *
 * @return Encoded signal.
 */
uint16_t sr439_veh_info_radar1_yaw_rate_raw_encode(double value);

/**
 * Decode given signal by applying scaling and offset.
 *
 * @param[in] value Signal to decode.
 *
 * @return Decoded signal.
 */
double sr439_veh_info_radar1_yaw_rate_raw_decode(uint16_t value);

/**
 * Check that given signal is in allowed range.
 *
 * @param[in] value Signal to check.
 *
 * @return true if in range, false otherwise.
 */
bool sr439_veh_info_radar1_yaw_rate_raw_is_in_range(uint16_t value);

/**
 * Pack message VehInfo_Radar2.
 *
 * @param[out] dst_p Buffer to pack the message into.
 * @param[in] src_p Data to pack.
 * @param[in] size Size of dst_p.
 *
 * @return Size of packed data, or negative error code.
 */
int sr439_veh_info_radar2_pack(
    uint8_t *dst_p,
    const struct sr439_veh_info_radar2_t *src_p,
    size_t size);

/**
 * Unpack message VehInfo_Radar2.
 *
 * @param[out] dst_p Object to unpack the message into.
 * @param[in] src_p Message to unpack.
 * @param[in] size Size of src_p.
 *
 * @return zero(0) or negative error code.
 */
int sr439_veh_info_radar2_unpack(
    struct sr439_veh_info_radar2_t *dst_p,
    const uint8_t *src_p,
    size_t size);

/**
 * Init message fields to default values from VehInfo_Radar2.
 *
 * @param[in] msg_p Message to init.
 *
 * @return zero(0) on success or (-1) in case of nullptr argument.
 */
int sr439_veh_info_radar2_init(struct sr439_veh_info_radar2_t *msg_p);

/**
 * Encode given signal by applying scaling and offset.
 *
 * @param[in] value Signal to encode.
 *
 * @return Encoded signal.
 */
uint16_t sr439_veh_info_radar2_steer_angle_encode(double value);

/**
 * Decode given signal by applying scaling and offset.
 *
 * @param[in] value Signal to decode.
 *
 * @return Decoded signal.
 */
double sr439_veh_info_radar2_steer_angle_decode(uint16_t value);

/**
 * Check that given signal is in allowed range.
 *
 * @param[in] value Signal to check.
 *
 * @return true if in range, false otherwise.
 */
bool sr439_veh_info_radar2_steer_angle_is_in_range(uint16_t value);

/**
 * Encode given signal by applying scaling and offset.
 *
 * @param[in] value Signal to encode.
 *
 * @return Encoded signal.
 */
uint8_t sr439_veh_info_radar2_gear_sts_encode(double value);

/**
 * Decode given signal by applying scaling and offset.
 *
 * @param[in] value Signal to decode.
 *
 * @return Decoded signal.
 */
double sr439_veh_info_radar2_gear_sts_decode(uint8_t value);

/**
 * Check that given signal is in allowed range.
 *
 * @param[in] value Signal to check.
 *
 * @return true if in range, false otherwise.
 */
bool sr439_veh_info_radar2_gear_sts_is_in_range(uint8_t value);

/**
 * Encode given signal by applying scaling and offset.
 *
 * @param[in] value Signal to encode.
 *
 * @return Encoded signal.
 */
uint16_t sr439_veh_info_radar2_veh_speed_encode(double value);

/**
 * Decode given signal by applying scaling and offset.
 *
 * @param[in] value Signal to decode.
 *
 * @return Decoded signal.
 */
double sr439_veh_info_radar2_veh_speed_decode(uint16_t value);

/**
 * Check that given signal is in allowed range.
 *
 * @param[in] value Signal to check.
 *
 * @return true if in range, false otherwise.
 */
bool sr439_veh_info_radar2_veh_speed_is_in_range(uint16_t value);

/**
 * Encode given signal by applying scaling and offset.
 *
 * @param[in] value Signal to encode.
 *
 * @return Encoded signal.
 */
uint16_t sr439_veh_info_radar2_yaw_rate_raw_encode(double value);

/**
 * Decode given signal by applying scaling and offset.
 *
 * @param[in] value Signal to decode.
 *
 * @return Decoded signal.
 */
double sr439_veh_info_radar2_yaw_rate_raw_decode(uint16_t value);

/**
 * Check that given signal is in allowed range.
 *
 * @param[in] value Signal to check.
 *
 * @return true if in range, false otherwise.
 */
bool sr439_veh_info_radar2_yaw_rate_raw_is_in_range(uint16_t value);

/**
 * Pack message changcheng_Test_State.
 *
 * @param[out] dst_p Buffer to pack the message into.
 * @param[in] src_p Data to pack.
 * @param[in] size Size of dst_p.
 *
 * @return Size of packed data, or negative error code.
 */
int sr439_changcheng_test_state_pack(
    uint8_t *dst_p,
    const struct sr439_changcheng_test_state_t *src_p,
    size_t size);

/**
 * Unpack message changcheng_Test_State.
 *
 * @param[out] dst_p Object to unpack the message into.
 * @param[in] src_p Message to unpack.
 * @param[in] size Size of src_p.
 *
 * @return zero(0) or negative error code.
 */
int sr439_changcheng_test_state_unpack(
    struct sr439_changcheng_test_state_t *dst_p,
    const uint8_t *src_p,
    size_t size);

/**
 * Init message fields to default values from changcheng_Test_State.
 *
 * @param[in] msg_p Message to init.
 *
 * @return zero(0) on success or (-1) in case of nullptr argument.
 */
int sr439_changcheng_test_state_init(struct sr439_changcheng_test_state_t *msg_p);

/**
 * Encode given signal by applying scaling and offset.
 *
 * @param[in] value Signal to encode.
 *
 * @return Encoded signal.
 */
uint8_t sr439_changcheng_test_state_changcheng_lock_sts_encode(double value);

/**
 * Decode given signal by applying scaling and offset.
 *
 * @param[in] value Signal to decode.
 *
 * @return Decoded signal.
 */
double sr439_changcheng_test_state_changcheng_lock_sts_decode(uint8_t value);

/**
 * Check that given signal is in allowed range.
 *
 * @param[in] value Signal to check.
 *
 * @return true if in range, false otherwise.
 */
bool sr439_changcheng_test_state_changcheng_lock_sts_is_in_range(uint8_t value);

/**
 * Encode given signal by applying scaling and offset.
 *
 * @param[in] value Signal to encode.
 *
 * @return Encoded signal.
 */
uint8_t sr439_changcheng_test_state_changcheng_driver_door_sts_encode(double value);

/**
 * Decode given signal by applying scaling and offset.
 *
 * @param[in] value Signal to decode.
 *
 * @return Decoded signal.
 */
double sr439_changcheng_test_state_changcheng_driver_door_sts_decode(uint8_t value);

/**
 * Check that given signal is in allowed range.
 *
 * @param[in] value Signal to check.
 *
 * @return true if in range, false otherwise.
 */
bool sr439_changcheng_test_state_changcheng_driver_door_sts_is_in_range(uint8_t value);

/**
 * Encode given signal by applying scaling and offset.
 *
 * @param[in] value Signal to encode.
 *
 * @return Encoded signal.
 */
uint8_t sr439_changcheng_test_state_changcheng_rl_door_sts_encode(double value);

/**
 * Decode given signal by applying scaling and offset.
 *
 * @param[in] value Signal to decode.
 *
 * @return Decoded signal.
 */
double sr439_changcheng_test_state_changcheng_rl_door_sts_decode(uint8_t value);

/**
 * Check that given signal is in allowed range.
 *
 * @param[in] value Signal to check.
 *
 * @return true if in range, false otherwise.
 */
bool sr439_changcheng_test_state_changcheng_rl_door_sts_is_in_range(uint8_t value);

/**
 * Encode given signal by applying scaling and offset.
 *
 * @param[in] value Signal to encode.
 *
 * @return Encoded signal.
 */
uint8_t sr439_changcheng_test_state_changcheng_passenger_door_sts_encode(double value);

/**
 * Decode given signal by applying scaling and offset.
 *
 * @param[in] value Signal to decode.
 *
 * @return Decoded signal.
 */
double sr439_changcheng_test_state_changcheng_passenger_door_sts_decode(uint8_t value);

/**
 * Check that given signal is in allowed range.
 *
 * @param[in] value Signal to check.
 *
 * @return true if in range, false otherwise.
 */
bool sr439_changcheng_test_state_changcheng_passenger_door_sts_is_in_range(uint8_t value);

/**
 * Encode given signal by applying scaling and offset.
 *
 * @param[in] value Signal to encode.
 *
 * @return Encoded signal.
 */
uint8_t sr439_changcheng_test_state_changcheng_rr_door_sts_encode(double value);

/**
 * Decode given signal by applying scaling and offset.
 *
 * @param[in] value Signal to decode.
 *
 * @return Decoded signal.
 */
double sr439_changcheng_test_state_changcheng_rr_door_sts_decode(uint8_t value);

/**
 * Check that given signal is in allowed range.
 *
 * @param[in] value Signal to check.
 *
 * @return true if in range, false otherwise.
 */
bool sr439_changcheng_test_state_changcheng_rr_door_sts_is_in_range(uint8_t value);

/**
 * Encode given signal by applying scaling and offset.
 *
 * @param[in] value Signal to encode.
 *
 * @return Encoded signal.
 */
uint8_t sr439_changcheng_test_state_changcheng_left_turn_sw_sts_encode(double value);

/**
 * Decode given signal by applying scaling and offset.
 *
 * @param[in] value Signal to decode.
 *
 * @return Decoded signal.
 */
double sr439_changcheng_test_state_changcheng_left_turn_sw_sts_decode(uint8_t value);

/**
 * Check that given signal is in allowed range.
 *
 * @param[in] value Signal to check.
 *
 * @return true if in range, false otherwise.
 */
bool sr439_changcheng_test_state_changcheng_left_turn_sw_sts_is_in_range(uint8_t value);

/**
 * Encode given signal by applying scaling and offset.
 *
 * @param[in] value Signal to encode.
 *
 * @return Encoded signal.
 */
uint8_t sr439_changcheng_test_state_changcheng_right_turn_sw_sts_encode(double value);

/**
 * Decode given signal by applying scaling and offset.
 *
 * @param[in] value Signal to decode.
 *
 * @return Decoded signal.
 */
double sr439_changcheng_test_state_changcheng_right_turn_sw_sts_decode(uint8_t value);

/**
 * Check that given signal is in allowed range.
 *
 * @param[in] value Signal to check.
 *
 * @return true if in range, false otherwise.
 */
bool sr439_changcheng_test_state_changcheng_right_turn_sw_sts_is_in_range(uint8_t value);

/**
 * Pack message Obj_End_Msg_RR.
 *
 * @param[out] dst_p Buffer to pack the message into.
 * @param[in] src_p Data to pack.
 * @param[in] size Size of dst_p.
 *
 * @return Size of packed data, or negative error code.
 */
int sr439_obj_end_msg_rr_pack(
    uint8_t *dst_p,
    const struct sr439_obj_end_msg_rr_t *src_p,
    size_t size);

/**
 * Unpack message Obj_End_Msg_RR.
 *
 * @param[out] dst_p Object to unpack the message into.
 * @param[in] src_p Message to unpack.
 * @param[in] size Size of src_p.
 *
 * @return zero(0) or negative error code.
 */
int sr439_obj_end_msg_rr_unpack(
    struct sr439_obj_end_msg_rr_t *dst_p,
    const uint8_t *src_p,
    size_t size);

/**
 * Init message fields to default values from Obj_End_Msg_RR.
 *
 * @param[in] msg_p Message to init.
 *
 * @return zero(0) on success or (-1) in case of nullptr argument.
 */
int sr439_obj_end_msg_rr_init(struct sr439_obj_end_msg_rr_t *msg_p);

/**
 * Encode given signal by applying scaling and offset.
 *
 * @param[in] value Signal to encode.
 *
 * @return Encoded signal.
 */
uint8_t sr439_obj_end_msg_rr_rf_voltage1_too_low_encode(double value);

/**
 * Decode given signal by applying scaling and offset.
 *
 * @param[in] value Signal to decode.
 *
 * @return Decoded signal.
 */
double sr439_obj_end_msg_rr_rf_voltage1_too_low_decode(uint8_t value);

/**
 * Check that given signal is in allowed range.
 *
 * @param[in] value Signal to check.
 *
 * @return true if in range, false otherwise.
 */
bool sr439_obj_end_msg_rr_rf_voltage1_too_low_is_in_range(uint8_t value);

/**
 * Encode given signal by applying scaling and offset.
 *
 * @param[in] value Signal to encode.
 *
 * @return Encoded signal.
 */
uint8_t sr439_obj_end_msg_rr_mcu_voltage_too_low_encode(double value);

/**
 * Decode given signal by applying scaling and offset.
 *
 * @param[in] value Signal to decode.
 *
 * @return Decoded signal.
 */
double sr439_obj_end_msg_rr_mcu_voltage_too_low_decode(uint8_t value);

/**
 * Check that given signal is in allowed range.
 *
 * @param[in] value Signal to check.
 *
 * @return true if in range, false otherwise.
 */
bool sr439_obj_end_msg_rr_mcu_voltage_too_low_is_in_range(uint8_t value);

/**
 * Encode given signal by applying scaling and offset.
 *
 * @param[in] value Signal to encode.
 *
 * @return Encoded signal.
 */
uint8_t sr439_obj_end_msg_rr_mcu_voltage_too_high_encode(double value);

/**
 * Decode given signal by applying scaling and offset.
 *
 * @param[in] value Signal to decode.
 *
 * @return Decoded signal.
 */
double sr439_obj_end_msg_rr_mcu_voltage_too_high_decode(uint8_t value);

/**
 * Check that given signal is in allowed range.
 *
 * @param[in] value Signal to check.
 *
 * @return true if in range, false otherwise.
 */
bool sr439_obj_end_msg_rr_mcu_voltage_too_high_is_in_range(uint8_t value);

/**
 * Encode given signal by applying scaling and offset.
 *
 * @param[in] value Signal to encode.
 *
 * @return Encoded signal.
 */
uint8_t sr439_obj_end_msg_rr_mcu_temperature_too_low_encode(double value);

/**
 * Decode given signal by applying scaling and offset.
 *
 * @param[in] value Signal to decode.
 *
 * @return Decoded signal.
 */
double sr439_obj_end_msg_rr_mcu_temperature_too_low_decode(uint8_t value);

/**
 * Check that given signal is in allowed range.
 *
 * @param[in] value Signal to check.
 *
 * @return true if in range, false otherwise.
 */
bool sr439_obj_end_msg_rr_mcu_temperature_too_low_is_in_range(uint8_t value);

/**
 * Encode given signal by applying scaling and offset.
 *
 * @param[in] value Signal to encode.
 *
 * @return Encoded signal.
 */
uint8_t sr439_obj_end_msg_rr_mcu_temperature_too_high_encode(double value);

/**
 * Decode given signal by applying scaling and offset.
 *
 * @param[in] value Signal to decode.
 *
 * @return Decoded signal.
 */
double sr439_obj_end_msg_rr_mcu_temperature_too_high_decode(uint8_t value);

/**
 * Check that given signal is in allowed range.
 *
 * @param[in] value Signal to check.
 *
 * @return true if in range, false otherwise.
 */
bool sr439_obj_end_msg_rr_mcu_temperature_too_high_is_in_range(uint8_t value);

/**
 * Encode given signal by applying scaling and offset.
 *
 * @param[in] value Signal to encode.
 *
 * @return Encoded signal.
 */
uint8_t sr439_obj_end_msg_rr_lost_communication_with_camera_encode(double value);

/**
 * Decode given signal by applying scaling and offset.
 *
 * @param[in] value Signal to decode.
 *
 * @return Decoded signal.
 */
double sr439_obj_end_msg_rr_lost_communication_with_camera_decode(uint8_t value);

/**
 * Check that given signal is in allowed range.
 *
 * @param[in] value Signal to check.
 *
 * @return true if in range, false otherwise.
 */
bool sr439_obj_end_msg_rr_lost_communication_with_camera_is_in_range(uint8_t value);

/**
 * Encode given signal by applying scaling and offset.
 *
 * @param[in] value Signal to encode.
 *
 * @return Encoded signal.
 */
uint8_t sr439_obj_end_msg_rr_communication_bus_off_encode(double value);

/**
 * Decode given signal by applying scaling and offset.
 *
 * @param[in] value Signal to decode.
 *
 * @return Decoded signal.
 */
double sr439_obj_end_msg_rr_communication_bus_off_decode(uint8_t value);

/**
 * Check that given signal is in allowed range.
 *
 * @param[in] value Signal to check.
 *
 * @return true if in range, false otherwise.
 */
bool sr439_obj_end_msg_rr_communication_bus_off_is_in_range(uint8_t value);

/**
 * Encode given signal by applying scaling and offset.
 *
 * @param[in] value Signal to encode.
 *
 * @return Encoded signal.
 */
uint8_t sr439_obj_end_msg_rr_radar_sleep_flag_encode(double value);

/**
 * Decode given signal by applying scaling and offset.
 *
 * @param[in] value Signal to decode.
 *
 * @return Decoded signal.
 */
double sr439_obj_end_msg_rr_radar_sleep_flag_decode(uint8_t value);

/**
 * Check that given signal is in allowed range.
 *
 * @param[in] value Signal to check.
 *
 * @return true if in range, false otherwise.
 */
bool sr439_obj_end_msg_rr_radar_sleep_flag_is_in_range(uint8_t value);

/**
 * Encode given signal by applying scaling and offset.
 *
 * @param[in] value Signal to encode.
 *
 * @return Encoded signal.
 */
uint8_t sr439_obj_end_msg_rr_mcu_master_clock_error_encode(double value);

/**
 * Decode given signal by applying scaling and offset.
 *
 * @param[in] value Signal to decode.
 *
 * @return Decoded signal.
 */
double sr439_obj_end_msg_rr_mcu_master_clock_error_decode(uint8_t value);

/**
 * Check that given signal is in allowed range.
 *
 * @param[in] value Signal to check.
 *
 * @return true if in range, false otherwise.
 */
bool sr439_obj_end_msg_rr_mcu_master_clock_error_is_in_range(uint8_t value);

/**
 * Encode given signal by applying scaling and offset.
 *
 * @param[in] value Signal to encode.
 *
 * @return Encoded signal.
 */
uint8_t sr439_obj_end_msg_rr_rf_temperature_too_low_encode(double value);

/**
 * Decode given signal by applying scaling and offset.
 *
 * @param[in] value Signal to decode.
 *
 * @return Decoded signal.
 */
double sr439_obj_end_msg_rr_rf_temperature_too_low_decode(uint8_t value);

/**
 * Check that given signal is in allowed range.
 *
 * @param[in] value Signal to check.
 *
 * @return true if in range, false otherwise.
 */
bool sr439_obj_end_msg_rr_rf_temperature_too_low_is_in_range(uint8_t value);

/**
 * Encode given signal by applying scaling and offset.
 *
 * @param[in] value Signal to encode.
 *
 * @return Encoded signal.
 */
uint8_t sr439_obj_end_msg_rr_rf_temperature_too_high_encode(double value);

/**
 * Decode given signal by applying scaling and offset.
 *
 * @param[in] value Signal to decode.
 *
 * @return Decoded signal.
 */
double sr439_obj_end_msg_rr_rf_temperature_too_high_decode(uint8_t value);

/**
 * Check that given signal is in allowed range.
 *
 * @param[in] value Signal to check.
 *
 * @return true if in range, false otherwise.
 */
bool sr439_obj_end_msg_rr_rf_temperature_too_high_is_in_range(uint8_t value);

/**
 * Encode given signal by applying scaling and offset.
 *
 * @param[in] value Signal to encode.
 *
 * @return Encoded signal.
 */
uint8_t sr439_obj_end_msg_rr_battery_voltage_too_low_encode(double value);

/**
 * Decode given signal by applying scaling and offset.
 *
 * @param[in] value Signal to decode.
 *
 * @return Decoded signal.
 */
double sr439_obj_end_msg_rr_battery_voltage_too_low_decode(uint8_t value);

/**
 * Check that given signal is in allowed range.
 *
 * @param[in] value Signal to check.
 *
 * @return true if in range, false otherwise.
 */
bool sr439_obj_end_msg_rr_battery_voltage_too_low_is_in_range(uint8_t value);

/**
 * Encode given signal by applying scaling and offset.
 *
 * @param[in] value Signal to encode.
 *
 * @return Encoded signal.
 */
uint8_t sr439_obj_end_msg_rr_battery_voltage_too_high_encode(double value);

/**
 * Decode given signal by applying scaling and offset.
 *
 * @param[in] value Signal to decode.
 *
 * @return Decoded signal.
 */
double sr439_obj_end_msg_rr_battery_voltage_too_high_decode(uint8_t value);

/**
 * Check that given signal is in allowed range.
 *
 * @param[in] value Signal to check.
 *
 * @return true if in range, false otherwise.
 */
bool sr439_obj_end_msg_rr_battery_voltage_too_high_is_in_range(uint8_t value);

/**
 * Encode given signal by applying scaling and offset.
 *
 * @param[in] value Signal to encode.
 *
 * @return Encoded signal.
 */
uint8_t sr439_obj_end_msg_rr_rf_voltage2_too_high_encode(double value);

/**
 * Decode given signal by applying scaling and offset.
 *
 * @param[in] value Signal to decode.
 *
 * @return Decoded signal.
 */
double sr439_obj_end_msg_rr_rf_voltage2_too_high_decode(uint8_t value);

/**
 * Check that given signal is in allowed range.
 *
 * @param[in] value Signal to check.
 *
 * @return true if in range, false otherwise.
 */
bool sr439_obj_end_msg_rr_rf_voltage2_too_high_is_in_range(uint8_t value);

/**
 * Encode given signal by applying scaling and offset.
 *
 * @param[in] value Signal to encode.
 *
 * @return Encoded signal.
 */
uint8_t sr439_obj_end_msg_rr_rf_voltage2_too_low_encode(double value);

/**
 * Decode given signal by applying scaling and offset.
 *
 * @param[in] value Signal to decode.
 *
 * @return Decoded signal.
 */
double sr439_obj_end_msg_rr_rf_voltage2_too_low_decode(uint8_t value);

/**
 * Check that given signal is in allowed range.
 *
 * @param[in] value Signal to check.
 *
 * @return true if in range, false otherwise.
 */
bool sr439_obj_end_msg_rr_rf_voltage2_too_low_is_in_range(uint8_t value);

/**
 * Encode given signal by applying scaling and offset.
 *
 * @param[in] value Signal to encode.
 *
 * @return Encoded signal.
 */
uint8_t sr439_obj_end_msg_rr_rf_voltage1_too_high_encode(double value);

/**
 * Decode given signal by applying scaling and offset.
 *
 * @param[in] value Signal to decode.
 *
 * @return Decoded signal.
 */
double sr439_obj_end_msg_rr_rf_voltage1_too_high_decode(uint8_t value);

/**
 * Check that given signal is in allowed range.
 *
 * @param[in] value Signal to check.
 *
 * @return true if in range, false otherwise.
 */
bool sr439_obj_end_msg_rr_rf_voltage1_too_high_is_in_range(uint8_t value);

/**
 * Encode given signal by applying scaling and offset.
 *
 * @param[in] value Signal to encode.
 *
 * @return Encoded signal.
 */
uint8_t sr439_obj_end_msg_rr_invalid_steering_angle_signal_encode(double value);

/**
 * Decode given signal by applying scaling and offset.
 *
 * @param[in] value Signal to decode.
 *
 * @return Decoded signal.
 */
double sr439_obj_end_msg_rr_invalid_steering_angle_signal_decode(uint8_t value);

/**
 * Check that given signal is in allowed range.
 *
 * @param[in] value Signal to check.
 *
 * @return true if in range, false otherwise.
 */
bool sr439_obj_end_msg_rr_invalid_steering_angle_signal_is_in_range(uint8_t value);

/**
 * Encode given signal by applying scaling and offset.
 *
 * @param[in] value Signal to encode.
 *
 * @return Encoded signal.
 */
uint8_t sr439_obj_end_msg_rr_invalid_yaw_rate_signal_encode(double value);

/**
 * Decode given signal by applying scaling and offset.
 *
 * @param[in] value Signal to decode.
 *
 * @return Decoded signal.
 */
double sr439_obj_end_msg_rr_invalid_yaw_rate_signal_decode(uint8_t value);

/**
 * Check that given signal is in allowed range.
 *
 * @param[in] value Signal to check.
 *
 * @return true if in range, false otherwise.
 */
bool sr439_obj_end_msg_rr_invalid_yaw_rate_signal_is_in_range(uint8_t value);

/**
 * Encode given signal by applying scaling and offset.
 *
 * @param[in] value Signal to encode.
 *
 * @return Encoded signal.
 */
uint8_t sr439_obj_end_msg_rr_invalid_vehicle_speed_signal_encode(double value);

/**
 * Decode given signal by applying scaling and offset.
 *
 * @param[in] value Signal to decode.
 *
 * @return Decoded signal.
 */
double sr439_obj_end_msg_rr_invalid_vehicle_speed_signal_decode(uint8_t value);

/**
 * Check that given signal is in allowed range.
 *
 * @param[in] value Signal to check.
 *
 * @return true if in range, false otherwise.
 */
bool sr439_obj_end_msg_rr_invalid_vehicle_speed_signal_is_in_range(uint8_t value);

/**
 * Encode given signal by applying scaling and offset.
 *
 * @param[in] value Signal to encode.
 *
 * @return Encoded signal.
 */
uint8_t sr439_obj_end_msg_rr_missing_calibration_encode(double value);

/**
 * Decode given signal by applying scaling and offset.
 *
 * @param[in] value Signal to decode.
 *
 * @return Decoded signal.
 */
double sr439_obj_end_msg_rr_missing_calibration_decode(uint8_t value);

/**
 * Check that given signal is in allowed range.
 *
 * @param[in] value Signal to check.
 *
 * @return true if in range, false otherwise.
 */
bool sr439_obj_end_msg_rr_missing_calibration_is_in_range(uint8_t value);

/**
 * Encode given signal by applying scaling and offset.
 *
 * @param[in] value Signal to encode.
 *
 * @return Encoded signal.
 */
uint8_t sr439_obj_end_msg_rr_rf_sensor_fault_encode(double value);

/**
 * Decode given signal by applying scaling and offset.
 *
 * @param[in] value Signal to decode.
 *
 * @return Decoded signal.
 */
double sr439_obj_end_msg_rr_rf_sensor_fault_decode(uint8_t value);

/**
 * Check that given signal is in allowed range.
 *
 * @param[in] value Signal to check.
 *
 * @return true if in range, false otherwise.
 */
bool sr439_obj_end_msg_rr_rf_sensor_fault_is_in_range(uint8_t value);

/**
 * Encode given signal by applying scaling and offset.
 *
 * @param[in] value Signal to encode.
 *
 * @return Encoded signal.
 */
uint8_t sr439_obj_end_msg_rr_g_sensor_fault_encode(double value);

/**
 * Decode given signal by applying scaling and offset.
 *
 * @param[in] value Signal to decode.
 *
 * @return Decoded signal.
 */
double sr439_obj_end_msg_rr_g_sensor_fault_decode(uint8_t value);

/**
 * Check that given signal is in allowed range.
 *
 * @param[in] value Signal to check.
 *
 * @return true if in range, false otherwise.
 */
bool sr439_obj_end_msg_rr_g_sensor_fault_is_in_range(uint8_t value);

/**
 * Encode given signal by applying scaling and offset.
 *
 * @param[in] value Signal to encode.
 *
 * @return Encoded signal.
 */
uint8_t sr439_obj_end_msg_rr_mcu_memory_error_encode(double value);

/**
 * Decode given signal by applying scaling and offset.
 *
 * @param[in] value Signal to decode.
 *
 * @return Decoded signal.
 */
double sr439_obj_end_msg_rr_mcu_memory_error_decode(uint8_t value);

/**
 * Check that given signal is in allowed range.
 *
 * @param[in] value Signal to check.
 *
 * @return true if in range, false otherwise.
 */
bool sr439_obj_end_msg_rr_mcu_memory_error_is_in_range(uint8_t value);

/**
 * Encode given signal by applying scaling and offset.
 *
 * @param[in] value Signal to encode.
 *
 * @return Encoded signal.
 */
uint8_t sr439_obj_end_msg_rr_mcu_error_encode(double value);

/**
 * Decode given signal by applying scaling and offset.
 *
 * @param[in] value Signal to decode.
 *
 * @return Decoded signal.
 */
double sr439_obj_end_msg_rr_mcu_error_decode(uint8_t value);

/**
 * Check that given signal is in allowed range.
 *
 * @param[in] value Signal to check.
 *
 * @return true if in range, false otherwise.
 */
bool sr439_obj_end_msg_rr_mcu_error_is_in_range(uint8_t value);

/**
 * Encode given signal by applying scaling and offset.
 *
 * @param[in] value Signal to encode.
 *
 * @return Encoded signal.
 */
uint8_t sr439_obj_end_msg_rr_radar_mount_position_shift_error_encode(double value);

/**
 * Decode given signal by applying scaling and offset.
 *
 * @param[in] value Signal to decode.
 *
 * @return Decoded signal.
 */
double sr439_obj_end_msg_rr_radar_mount_position_shift_error_decode(uint8_t value);

/**
 * Check that given signal is in allowed range.
 *
 * @param[in] value Signal to check.
 *
 * @return true if in range, false otherwise.
 */
bool sr439_obj_end_msg_rr_radar_mount_position_shift_error_is_in_range(uint8_t value);

/**
 * Encode given signal by applying scaling and offset.
 *
 * @param[in] value Signal to encode.
 *
 * @return Encoded signal.
 */
uint8_t sr439_obj_end_msg_rr_radar_block_encode(double value);

/**
 * Decode given signal by applying scaling and offset.
 *
 * @param[in] value Signal to decode.
 *
 * @return Decoded signal.
 */
double sr439_obj_end_msg_rr_radar_block_decode(uint8_t value);

/**
 * Check that given signal is in allowed range.
 *
 * @param[in] value Signal to check.
 *
 * @return true if in range, false otherwise.
 */
bool sr439_obj_end_msg_rr_radar_block_is_in_range(uint8_t value);

/**
 * Encode given signal by applying scaling and offset.
 *
 * @param[in] value Signal to encode.
 *
 * @return Encoded signal.
 */
uint8_t sr439_obj_end_msg_rr_invalid_ign_sta_signal_encode(double value);

/**
 * Decode given signal by applying scaling and offset.
 *
 * @param[in] value Signal to decode.
 *
 * @return Decoded signal.
 */
double sr439_obj_end_msg_rr_invalid_ign_sta_signal_decode(uint8_t value);

/**
 * Check that given signal is in allowed range.
 *
 * @param[in] value Signal to check.
 *
 * @return true if in range, false otherwise.
 */
bool sr439_obj_end_msg_rr_invalid_ign_sta_signal_is_in_range(uint8_t value);

/**
 * Encode given signal by applying scaling and offset.
 *
 * @param[in] value Signal to encode.
 *
 * @return Encoded signal.
 */
uint8_t sr439_obj_end_msg_rr_invalid_gear_position_signal_encode(double value);

/**
 * Decode given signal by applying scaling and offset.
 *
 * @param[in] value Signal to decode.
 *
 * @return Decoded signal.
 */
double sr439_obj_end_msg_rr_invalid_gear_position_signal_decode(uint8_t value);

/**
 * Check that given signal is in allowed range.
 *
 * @param[in] value Signal to check.
 *
 * @return true if in range, false otherwise.
 */
bool sr439_obj_end_msg_rr_invalid_gear_position_signal_is_in_range(uint8_t value);

/**
 * Encode given signal by applying scaling and offset.
 *
 * @param[in] value Signal to encode.
 *
 * @return Encoded signal.
 */
uint8_t sr439_obj_end_msg_rr_radar_yaw_rate_raw_v_encode(double value);

/**
 * Decode given signal by applying scaling and offset.
 *
 * @param[in] value Signal to decode.
 *
 * @return Decoded signal.
 */
double sr439_obj_end_msg_rr_radar_yaw_rate_raw_v_decode(uint8_t value);

/**
 * Check that given signal is in allowed range.
 *
 * @param[in] value Signal to check.
 *
 * @return true if in range, false otherwise.
 */
bool sr439_obj_end_msg_rr_radar_yaw_rate_raw_v_is_in_range(uint8_t value);

/**
 * Pack message Obj_End_Msg_FR.
 *
 * @param[out] dst_p Buffer to pack the message into.
 * @param[in] src_p Data to pack.
 * @param[in] size Size of dst_p.
 *
 * @return Size of packed data, or negative error code.
 */
int sr439_obj_end_msg_fr_pack(
    uint8_t *dst_p,
    const struct sr439_obj_end_msg_fr_t *src_p,
    size_t size);

/**
 * Unpack message Obj_End_Msg_FR.
 *
 * @param[out] dst_p Object to unpack the message into.
 * @param[in] src_p Message to unpack.
 * @param[in] size Size of src_p.
 *
 * @return zero(0) or negative error code.
 */
int sr439_obj_end_msg_fr_unpack(
    struct sr439_obj_end_msg_fr_t *dst_p,
    const uint8_t *src_p,
    size_t size);

/**
 * Init message fields to default values from Obj_End_Msg_FR.
 *
 * @param[in] msg_p Message to init.
 *
 * @return zero(0) on success or (-1) in case of nullptr argument.
 */
int sr439_obj_end_msg_fr_init(struct sr439_obj_end_msg_fr_t *msg_p);

/**
 * Encode given signal by applying scaling and offset.
 *
 * @param[in] value Signal to encode.
 *
 * @return Encoded signal.
 */
uint8_t sr439_obj_end_msg_fr_rf_voltage1_too_low_encode(double value);

/**
 * Decode given signal by applying scaling and offset.
 *
 * @param[in] value Signal to decode.
 *
 * @return Decoded signal.
 */
double sr439_obj_end_msg_fr_rf_voltage1_too_low_decode(uint8_t value);

/**
 * Check that given signal is in allowed range.
 *
 * @param[in] value Signal to check.
 *
 * @return true if in range, false otherwise.
 */
bool sr439_obj_end_msg_fr_rf_voltage1_too_low_is_in_range(uint8_t value);

/**
 * Encode given signal by applying scaling and offset.
 *
 * @param[in] value Signal to encode.
 *
 * @return Encoded signal.
 */
uint8_t sr439_obj_end_msg_fr_mcu_voltage_too_low_encode(double value);

/**
 * Decode given signal by applying scaling and offset.
 *
 * @param[in] value Signal to decode.
 *
 * @return Decoded signal.
 */
double sr439_obj_end_msg_fr_mcu_voltage_too_low_decode(uint8_t value);

/**
 * Check that given signal is in allowed range.
 *
 * @param[in] value Signal to check.
 *
 * @return true if in range, false otherwise.
 */
bool sr439_obj_end_msg_fr_mcu_voltage_too_low_is_in_range(uint8_t value);

/**
 * Encode given signal by applying scaling and offset.
 *
 * @param[in] value Signal to encode.
 *
 * @return Encoded signal.
 */
uint8_t sr439_obj_end_msg_fr_mcu_voltage_too_high_encode(double value);

/**
 * Decode given signal by applying scaling and offset.
 *
 * @param[in] value Signal to decode.
 *
 * @return Decoded signal.
 */
double sr439_obj_end_msg_fr_mcu_voltage_too_high_decode(uint8_t value);

/**
 * Check that given signal is in allowed range.
 *
 * @param[in] value Signal to check.
 *
 * @return true if in range, false otherwise.
 */
bool sr439_obj_end_msg_fr_mcu_voltage_too_high_is_in_range(uint8_t value);

/**
 * Encode given signal by applying scaling and offset.
 *
 * @param[in] value Signal to encode.
 *
 * @return Encoded signal.
 */
uint8_t sr439_obj_end_msg_fr_mcu_temperature_too_low_encode(double value);

/**
 * Decode given signal by applying scaling and offset.
 *
 * @param[in] value Signal to decode.
 *
 * @return Decoded signal.
 */
double sr439_obj_end_msg_fr_mcu_temperature_too_low_decode(uint8_t value);

/**
 * Check that given signal is in allowed range.
 *
 * @param[in] value Signal to check.
 *
 * @return true if in range, false otherwise.
 */
bool sr439_obj_end_msg_fr_mcu_temperature_too_low_is_in_range(uint8_t value);

/**
 * Encode given signal by applying scaling and offset.
 *
 * @param[in] value Signal to encode.
 *
 * @return Encoded signal.
 */
uint8_t sr439_obj_end_msg_fr_mcu_temperature_too_high_encode(double value);

/**
 * Decode given signal by applying scaling and offset.
 *
 * @param[in] value Signal to decode.
 *
 * @return Decoded signal.
 */
double sr439_obj_end_msg_fr_mcu_temperature_too_high_decode(uint8_t value);

/**
 * Check that given signal is in allowed range.
 *
 * @param[in] value Signal to check.
 *
 * @return true if in range, false otherwise.
 */
bool sr439_obj_end_msg_fr_mcu_temperature_too_high_is_in_range(uint8_t value);

/**
 * Encode given signal by applying scaling and offset.
 *
 * @param[in] value Signal to encode.
 *
 * @return Encoded signal.
 */
uint8_t sr439_obj_end_msg_fr_lost_communication_with_camera_encode(double value);

/**
 * Decode given signal by applying scaling and offset.
 *
 * @param[in] value Signal to decode.
 *
 * @return Decoded signal.
 */
double sr439_obj_end_msg_fr_lost_communication_with_camera_decode(uint8_t value);

/**
 * Check that given signal is in allowed range.
 *
 * @param[in] value Signal to check.
 *
 * @return true if in range, false otherwise.
 */
bool sr439_obj_end_msg_fr_lost_communication_with_camera_is_in_range(uint8_t value);

/**
 * Encode given signal by applying scaling and offset.
 *
 * @param[in] value Signal to encode.
 *
 * @return Encoded signal.
 */
uint8_t sr439_obj_end_msg_fr_communication_bus_off_encode(double value);

/**
 * Decode given signal by applying scaling and offset.
 *
 * @param[in] value Signal to decode.
 *
 * @return Decoded signal.
 */
double sr439_obj_end_msg_fr_communication_bus_off_decode(uint8_t value);

/**
 * Check that given signal is in allowed range.
 *
 * @param[in] value Signal to check.
 *
 * @return true if in range, false otherwise.
 */
bool sr439_obj_end_msg_fr_communication_bus_off_is_in_range(uint8_t value);

/**
 * Encode given signal by applying scaling and offset.
 *
 * @param[in] value Signal to encode.
 *
 * @return Encoded signal.
 */
uint8_t sr439_obj_end_msg_fr_radar_sleep_flag_encode(double value);

/**
 * Decode given signal by applying scaling and offset.
 *
 * @param[in] value Signal to decode.
 *
 * @return Decoded signal.
 */
double sr439_obj_end_msg_fr_radar_sleep_flag_decode(uint8_t value);

/**
 * Check that given signal is in allowed range.
 *
 * @param[in] value Signal to check.
 *
 * @return true if in range, false otherwise.
 */
bool sr439_obj_end_msg_fr_radar_sleep_flag_is_in_range(uint8_t value);

/**
 * Encode given signal by applying scaling and offset.
 *
 * @param[in] value Signal to encode.
 *
 * @return Encoded signal.
 */
uint8_t sr439_obj_end_msg_fr_mcu_master_clock_error_encode(double value);

/**
 * Decode given signal by applying scaling and offset.
 *
 * @param[in] value Signal to decode.
 *
 * @return Decoded signal.
 */
double sr439_obj_end_msg_fr_mcu_master_clock_error_decode(uint8_t value);

/**
 * Check that given signal is in allowed range.
 *
 * @param[in] value Signal to check.
 *
 * @return true if in range, false otherwise.
 */
bool sr439_obj_end_msg_fr_mcu_master_clock_error_is_in_range(uint8_t value);

/**
 * Encode given signal by applying scaling and offset.
 *
 * @param[in] value Signal to encode.
 *
 * @return Encoded signal.
 */
uint8_t sr439_obj_end_msg_fr_rf_temperature_too_low_encode(double value);

/**
 * Decode given signal by applying scaling and offset.
 *
 * @param[in] value Signal to decode.
 *
 * @return Decoded signal.
 */
double sr439_obj_end_msg_fr_rf_temperature_too_low_decode(uint8_t value);

/**
 * Check that given signal is in allowed range.
 *
 * @param[in] value Signal to check.
 *
 * @return true if in range, false otherwise.
 */
bool sr439_obj_end_msg_fr_rf_temperature_too_low_is_in_range(uint8_t value);

/**
 * Encode given signal by applying scaling and offset.
 *
 * @param[in] value Signal to encode.
 *
 * @return Encoded signal.
 */
uint8_t sr439_obj_end_msg_fr_rf_temperature_too_high_encode(double value);

/**
 * Decode given signal by applying scaling and offset.
 *
 * @param[in] value Signal to decode.
 *
 * @return Decoded signal.
 */
double sr439_obj_end_msg_fr_rf_temperature_too_high_decode(uint8_t value);

/**
 * Check that given signal is in allowed range.
 *
 * @param[in] value Signal to check.
 *
 * @return true if in range, false otherwise.
 */
bool sr439_obj_end_msg_fr_rf_temperature_too_high_is_in_range(uint8_t value);

/**
 * Encode given signal by applying scaling and offset.
 *
 * @param[in] value Signal to encode.
 *
 * @return Encoded signal.
 */
uint8_t sr439_obj_end_msg_fr_battery_voltage_too_low_encode(double value);

/**
 * Decode given signal by applying scaling and offset.
 *
 * @param[in] value Signal to decode.
 *
 * @return Decoded signal.
 */
double sr439_obj_end_msg_fr_battery_voltage_too_low_decode(uint8_t value);

/**
 * Check that given signal is in allowed range.
 *
 * @param[in] value Signal to check.
 *
 * @return true if in range, false otherwise.
 */
bool sr439_obj_end_msg_fr_battery_voltage_too_low_is_in_range(uint8_t value);

/**
 * Encode given signal by applying scaling and offset.
 *
 * @param[in] value Signal to encode.
 *
 * @return Encoded signal.
 */
uint8_t sr439_obj_end_msg_fr_battery_voltage_too_high_encode(double value);

/**
 * Decode given signal by applying scaling and offset.
 *
 * @param[in] value Signal to decode.
 *
 * @return Decoded signal.
 */
double sr439_obj_end_msg_fr_battery_voltage_too_high_decode(uint8_t value);

/**
 * Check that given signal is in allowed range.
 *
 * @param[in] value Signal to check.
 *
 * @return true if in range, false otherwise.
 */
bool sr439_obj_end_msg_fr_battery_voltage_too_high_is_in_range(uint8_t value);

/**
 * Encode given signal by applying scaling and offset.
 *
 * @param[in] value Signal to encode.
 *
 * @return Encoded signal.
 */
uint8_t sr439_obj_end_msg_fr_rf_voltage2_too_high_encode(double value);

/**
 * Decode given signal by applying scaling and offset.
 *
 * @param[in] value Signal to decode.
 *
 * @return Decoded signal.
 */
double sr439_obj_end_msg_fr_rf_voltage2_too_high_decode(uint8_t value);

/**
 * Check that given signal is in allowed range.
 *
 * @param[in] value Signal to check.
 *
 * @return true if in range, false otherwise.
 */
bool sr439_obj_end_msg_fr_rf_voltage2_too_high_is_in_range(uint8_t value);

/**
 * Encode given signal by applying scaling and offset.
 *
 * @param[in] value Signal to encode.
 *
 * @return Encoded signal.
 */
uint8_t sr439_obj_end_msg_fr_rf_voltage2_too_low_encode(double value);

/**
 * Decode given signal by applying scaling and offset.
 *
 * @param[in] value Signal to decode.
 *
 * @return Decoded signal.
 */
double sr439_obj_end_msg_fr_rf_voltage2_too_low_decode(uint8_t value);

/**
 * Check that given signal is in allowed range.
 *
 * @param[in] value Signal to check.
 *
 * @return true if in range, false otherwise.
 */
bool sr439_obj_end_msg_fr_rf_voltage2_too_low_is_in_range(uint8_t value);

/**
 * Encode given signal by applying scaling and offset.
 *
 * @param[in] value Signal to encode.
 *
 * @return Encoded signal.
 */
uint8_t sr439_obj_end_msg_fr_rf_voltage1_too_high_encode(double value);

/**
 * Decode given signal by applying scaling and offset.
 *
 * @param[in] value Signal to decode.
 *
 * @return Decoded signal.
 */
double sr439_obj_end_msg_fr_rf_voltage1_too_high_decode(uint8_t value);

/**
 * Check that given signal is in allowed range.
 *
 * @param[in] value Signal to check.
 *
 * @return true if in range, false otherwise.
 */
bool sr439_obj_end_msg_fr_rf_voltage1_too_high_is_in_range(uint8_t value);

/**
 * Encode given signal by applying scaling and offset.
 *
 * @param[in] value Signal to encode.
 *
 * @return Encoded signal.
 */
uint8_t sr439_obj_end_msg_fr_invalid_steering_angle_signal_encode(double value);

/**
 * Decode given signal by applying scaling and offset.
 *
 * @param[in] value Signal to decode.
 *
 * @return Decoded signal.
 */
double sr439_obj_end_msg_fr_invalid_steering_angle_signal_decode(uint8_t value);

/**
 * Check that given signal is in allowed range.
 *
 * @param[in] value Signal to check.
 *
 * @return true if in range, false otherwise.
 */
bool sr439_obj_end_msg_fr_invalid_steering_angle_signal_is_in_range(uint8_t value);

/**
 * Encode given signal by applying scaling and offset.
 *
 * @param[in] value Signal to encode.
 *
 * @return Encoded signal.
 */
uint8_t sr439_obj_end_msg_fr_invalid_yaw_rate_signal_encode(double value);

/**
 * Decode given signal by applying scaling and offset.
 *
 * @param[in] value Signal to decode.
 *
 * @return Decoded signal.
 */
double sr439_obj_end_msg_fr_invalid_yaw_rate_signal_decode(uint8_t value);

/**
 * Check that given signal is in allowed range.
 *
 * @param[in] value Signal to check.
 *
 * @return true if in range, false otherwise.
 */
bool sr439_obj_end_msg_fr_invalid_yaw_rate_signal_is_in_range(uint8_t value);

/**
 * Encode given signal by applying scaling and offset.
 *
 * @param[in] value Signal to encode.
 *
 * @return Encoded signal.
 */
uint8_t sr439_obj_end_msg_fr_invalid_vehicle_speed_signal_encode(double value);

/**
 * Decode given signal by applying scaling and offset.
 *
 * @param[in] value Signal to decode.
 *
 * @return Decoded signal.
 */
double sr439_obj_end_msg_fr_invalid_vehicle_speed_signal_decode(uint8_t value);

/**
 * Check that given signal is in allowed range.
 *
 * @param[in] value Signal to check.
 *
 * @return true if in range, false otherwise.
 */
bool sr439_obj_end_msg_fr_invalid_vehicle_speed_signal_is_in_range(uint8_t value);

/**
 * Encode given signal by applying scaling and offset.
 *
 * @param[in] value Signal to encode.
 *
 * @return Encoded signal.
 */
uint8_t sr439_obj_end_msg_fr_missing_calibration_encode(double value);

/**
 * Decode given signal by applying scaling and offset.
 *
 * @param[in] value Signal to decode.
 *
 * @return Decoded signal.
 */
double sr439_obj_end_msg_fr_missing_calibration_decode(uint8_t value);

/**
 * Check that given signal is in allowed range.
 *
 * @param[in] value Signal to check.
 *
 * @return true if in range, false otherwise.
 */
bool sr439_obj_end_msg_fr_missing_calibration_is_in_range(uint8_t value);

/**
 * Encode given signal by applying scaling and offset.
 *
 * @param[in] value Signal to encode.
 *
 * @return Encoded signal.
 */
uint8_t sr439_obj_end_msg_fr_rf_sensor_fault_encode(double value);

/**
 * Decode given signal by applying scaling and offset.
 *
 * @param[in] value Signal to decode.
 *
 * @return Decoded signal.
 */
double sr439_obj_end_msg_fr_rf_sensor_fault_decode(uint8_t value);

/**
 * Check that given signal is in allowed range.
 *
 * @param[in] value Signal to check.
 *
 * @return true if in range, false otherwise.
 */
bool sr439_obj_end_msg_fr_rf_sensor_fault_is_in_range(uint8_t value);

/**
 * Encode given signal by applying scaling and offset.
 *
 * @param[in] value Signal to encode.
 *
 * @return Encoded signal.
 */
uint8_t sr439_obj_end_msg_fr_g_sensor_fault_encode(double value);

/**
 * Decode given signal by applying scaling and offset.
 *
 * @param[in] value Signal to decode.
 *
 * @return Decoded signal.
 */
double sr439_obj_end_msg_fr_g_sensor_fault_decode(uint8_t value);

/**
 * Check that given signal is in allowed range.
 *
 * @param[in] value Signal to check.
 *
 * @return true if in range, false otherwise.
 */
bool sr439_obj_end_msg_fr_g_sensor_fault_is_in_range(uint8_t value);

/**
 * Encode given signal by applying scaling and offset.
 *
 * @param[in] value Signal to encode.
 *
 * @return Encoded signal.
 */
uint8_t sr439_obj_end_msg_fr_mcu_memory_error_encode(double value);

/**
 * Decode given signal by applying scaling and offset.
 *
 * @param[in] value Signal to decode.
 *
 * @return Decoded signal.
 */
double sr439_obj_end_msg_fr_mcu_memory_error_decode(uint8_t value);

/**
 * Check that given signal is in allowed range.
 *
 * @param[in] value Signal to check.
 *
 * @return true if in range, false otherwise.
 */
bool sr439_obj_end_msg_fr_mcu_memory_error_is_in_range(uint8_t value);

/**
 * Encode given signal by applying scaling and offset.
 *
 * @param[in] value Signal to encode.
 *
 * @return Encoded signal.
 */
uint8_t sr439_obj_end_msg_fr_mcu_error_encode(double value);

/**
 * Decode given signal by applying scaling and offset.
 *
 * @param[in] value Signal to decode.
 *
 * @return Decoded signal.
 */
double sr439_obj_end_msg_fr_mcu_error_decode(uint8_t value);

/**
 * Check that given signal is in allowed range.
 *
 * @param[in] value Signal to check.
 *
 * @return true if in range, false otherwise.
 */
bool sr439_obj_end_msg_fr_mcu_error_is_in_range(uint8_t value);

/**
 * Encode given signal by applying scaling and offset.
 *
 * @param[in] value Signal to encode.
 *
 * @return Encoded signal.
 */
uint8_t sr439_obj_end_msg_fr_radar_mount_position_shift_error_encode(double value);

/**
 * Decode given signal by applying scaling and offset.
 *
 * @param[in] value Signal to decode.
 *
 * @return Decoded signal.
 */
double sr439_obj_end_msg_fr_radar_mount_position_shift_error_decode(uint8_t value);

/**
 * Check that given signal is in allowed range.
 *
 * @param[in] value Signal to check.
 *
 * @return true if in range, false otherwise.
 */
bool sr439_obj_end_msg_fr_radar_mount_position_shift_error_is_in_range(uint8_t value);

/**
 * Encode given signal by applying scaling and offset.
 *
 * @param[in] value Signal to encode.
 *
 * @return Encoded signal.
 */
uint8_t sr439_obj_end_msg_fr_radar_block_encode(double value);

/**
 * Decode given signal by applying scaling and offset.
 *
 * @param[in] value Signal to decode.
 *
 * @return Decoded signal.
 */
double sr439_obj_end_msg_fr_radar_block_decode(uint8_t value);

/**
 * Check that given signal is in allowed range.
 *
 * @param[in] value Signal to check.
 *
 * @return true if in range, false otherwise.
 */
bool sr439_obj_end_msg_fr_radar_block_is_in_range(uint8_t value);

/**
 * Encode given signal by applying scaling and offset.
 *
 * @param[in] value Signal to encode.
 *
 * @return Encoded signal.
 */
uint8_t sr439_obj_end_msg_fr_invalid_ign_sta_signal_encode(double value);

/**
 * Decode given signal by applying scaling and offset.
 *
 * @param[in] value Signal to decode.
 *
 * @return Decoded signal.
 */
double sr439_obj_end_msg_fr_invalid_ign_sta_signal_decode(uint8_t value);

/**
 * Check that given signal is in allowed range.
 *
 * @param[in] value Signal to check.
 *
 * @return true if in range, false otherwise.
 */
bool sr439_obj_end_msg_fr_invalid_ign_sta_signal_is_in_range(uint8_t value);

/**
 * Encode given signal by applying scaling and offset.
 *
 * @param[in] value Signal to encode.
 *
 * @return Encoded signal.
 */
uint8_t sr439_obj_end_msg_fr_invalid_gear_position_signal_encode(double value);

/**
 * Decode given signal by applying scaling and offset.
 *
 * @param[in] value Signal to decode.
 *
 * @return Decoded signal.
 */
double sr439_obj_end_msg_fr_invalid_gear_position_signal_decode(uint8_t value);

/**
 * Check that given signal is in allowed range.
 *
 * @param[in] value Signal to check.
 *
 * @return true if in range, false otherwise.
 */
bool sr439_obj_end_msg_fr_invalid_gear_position_signal_is_in_range(uint8_t value);

/**
 * Encode given signal by applying scaling and offset.
 *
 * @param[in] value Signal to encode.
 *
 * @return Encoded signal.
 */
uint8_t sr439_obj_end_msg_fr_radar_yaw_rate_raw_v_encode(double value);

/**
 * Decode given signal by applying scaling and offset.
 *
 * @param[in] value Signal to decode.
 *
 * @return Decoded signal.
 */
double sr439_obj_end_msg_fr_radar_yaw_rate_raw_v_decode(uint8_t value);

/**
 * Check that given signal is in allowed range.
 *
 * @param[in] value Signal to check.
 *
 * @return true if in range, false otherwise.
 */
bool sr439_obj_end_msg_fr_radar_yaw_rate_raw_v_is_in_range(uint8_t value);

/**
 * Pack message Obj_End_Msg_FL.
 *
 * @param[out] dst_p Buffer to pack the message into.
 * @param[in] src_p Data to pack.
 * @param[in] size Size of dst_p.
 *
 * @return Size of packed data, or negative error code.
 */
int sr439_obj_end_msg_fl_pack(
    uint8_t *dst_p,
    const struct sr439_obj_end_msg_fl_t *src_p,
    size_t size);

/**
 * Unpack message Obj_End_Msg_FL.
 *
 * @param[out] dst_p Object to unpack the message into.
 * @param[in] src_p Message to unpack.
 * @param[in] size Size of src_p.
 *
 * @return zero(0) or negative error code.
 */
int sr439_obj_end_msg_fl_unpack(
    struct sr439_obj_end_msg_fl_t *dst_p,
    const uint8_t *src_p,
    size_t size);

/**
 * Init message fields to default values from Obj_End_Msg_FL.
 *
 * @param[in] msg_p Message to init.
 *
 * @return zero(0) on success or (-1) in case of nullptr argument.
 */
int sr439_obj_end_msg_fl_init(struct sr439_obj_end_msg_fl_t *msg_p);

/**
 * Encode given signal by applying scaling and offset.
 *
 * @param[in] value Signal to encode.
 *
 * @return Encoded signal.
 */
uint8_t sr439_obj_end_msg_fl_rf_voltage1_too_low_encode(double value);

/**
 * Decode given signal by applying scaling and offset.
 *
 * @param[in] value Signal to decode.
 *
 * @return Decoded signal.
 */
double sr439_obj_end_msg_fl_rf_voltage1_too_low_decode(uint8_t value);

/**
 * Check that given signal is in allowed range.
 *
 * @param[in] value Signal to check.
 *
 * @return true if in range, false otherwise.
 */
bool sr439_obj_end_msg_fl_rf_voltage1_too_low_is_in_range(uint8_t value);

/**
 * Encode given signal by applying scaling and offset.
 *
 * @param[in] value Signal to encode.
 *
 * @return Encoded signal.
 */
uint8_t sr439_obj_end_msg_fl_mcu_voltage_too_low_encode(double value);

/**
 * Decode given signal by applying scaling and offset.
 *
 * @param[in] value Signal to decode.
 *
 * @return Decoded signal.
 */
double sr439_obj_end_msg_fl_mcu_voltage_too_low_decode(uint8_t value);

/**
 * Check that given signal is in allowed range.
 *
 * @param[in] value Signal to check.
 *
 * @return true if in range, false otherwise.
 */
bool sr439_obj_end_msg_fl_mcu_voltage_too_low_is_in_range(uint8_t value);

/**
 * Encode given signal by applying scaling and offset.
 *
 * @param[in] value Signal to encode.
 *
 * @return Encoded signal.
 */
uint8_t sr439_obj_end_msg_fl_mcu_voltage_too_high_encode(double value);

/**
 * Decode given signal by applying scaling and offset.
 *
 * @param[in] value Signal to decode.
 *
 * @return Decoded signal.
 */
double sr439_obj_end_msg_fl_mcu_voltage_too_high_decode(uint8_t value);

/**
 * Check that given signal is in allowed range.
 *
 * @param[in] value Signal to check.
 *
 * @return true if in range, false otherwise.
 */
bool sr439_obj_end_msg_fl_mcu_voltage_too_high_is_in_range(uint8_t value);

/**
 * Encode given signal by applying scaling and offset.
 *
 * @param[in] value Signal to encode.
 *
 * @return Encoded signal.
 */
uint8_t sr439_obj_end_msg_fl_mcu_temperature_too_low_encode(double value);

/**
 * Decode given signal by applying scaling and offset.
 *
 * @param[in] value Signal to decode.
 *
 * @return Decoded signal.
 */
double sr439_obj_end_msg_fl_mcu_temperature_too_low_decode(uint8_t value);

/**
 * Check that given signal is in allowed range.
 *
 * @param[in] value Signal to check.
 *
 * @return true if in range, false otherwise.
 */
bool sr439_obj_end_msg_fl_mcu_temperature_too_low_is_in_range(uint8_t value);

/**
 * Encode given signal by applying scaling and offset.
 *
 * @param[in] value Signal to encode.
 *
 * @return Encoded signal.
 */
uint8_t sr439_obj_end_msg_fl_mcu_temperature_too_high_encode(double value);

/**
 * Decode given signal by applying scaling and offset.
 *
 * @param[in] value Signal to decode.
 *
 * @return Decoded signal.
 */
double sr439_obj_end_msg_fl_mcu_temperature_too_high_decode(uint8_t value);

/**
 * Check that given signal is in allowed range.
 *
 * @param[in] value Signal to check.
 *
 * @return true if in range, false otherwise.
 */
bool sr439_obj_end_msg_fl_mcu_temperature_too_high_is_in_range(uint8_t value);

/**
 * Encode given signal by applying scaling and offset.
 *
 * @param[in] value Signal to encode.
 *
 * @return Encoded signal.
 */
uint8_t sr439_obj_end_msg_fl_lost_communication_with_camera_encode(double value);

/**
 * Decode given signal by applying scaling and offset.
 *
 * @param[in] value Signal to decode.
 *
 * @return Decoded signal.
 */
double sr439_obj_end_msg_fl_lost_communication_with_camera_decode(uint8_t value);

/**
 * Check that given signal is in allowed range.
 *
 * @param[in] value Signal to check.
 *
 * @return true if in range, false otherwise.
 */
bool sr439_obj_end_msg_fl_lost_communication_with_camera_is_in_range(uint8_t value);

/**
 * Encode given signal by applying scaling and offset.
 *
 * @param[in] value Signal to encode.
 *
 * @return Encoded signal.
 */
uint8_t sr439_obj_end_msg_fl_communication_bus_off_encode(double value);

/**
 * Decode given signal by applying scaling and offset.
 *
 * @param[in] value Signal to decode.
 *
 * @return Decoded signal.
 */
double sr439_obj_end_msg_fl_communication_bus_off_decode(uint8_t value);

/**
 * Check that given signal is in allowed range.
 *
 * @param[in] value Signal to check.
 *
 * @return true if in range, false otherwise.
 */
bool sr439_obj_end_msg_fl_communication_bus_off_is_in_range(uint8_t value);

/**
 * Encode given signal by applying scaling and offset.
 *
 * @param[in] value Signal to encode.
 *
 * @return Encoded signal.
 */
uint8_t sr439_obj_end_msg_fl_radar_sleep_flag_encode(double value);

/**
 * Decode given signal by applying scaling and offset.
 *
 * @param[in] value Signal to decode.
 *
 * @return Decoded signal.
 */
double sr439_obj_end_msg_fl_radar_sleep_flag_decode(uint8_t value);

/**
 * Check that given signal is in allowed range.
 *
 * @param[in] value Signal to check.
 *
 * @return true if in range, false otherwise.
 */
bool sr439_obj_end_msg_fl_radar_sleep_flag_is_in_range(uint8_t value);

/**
 * Encode given signal by applying scaling and offset.
 *
 * @param[in] value Signal to encode.
 *
 * @return Encoded signal.
 */
uint8_t sr439_obj_end_msg_fl_mcu_master_clock_error_encode(double value);

/**
 * Decode given signal by applying scaling and offset.
 *
 * @param[in] value Signal to decode.
 *
 * @return Decoded signal.
 */
double sr439_obj_end_msg_fl_mcu_master_clock_error_decode(uint8_t value);

/**
 * Check that given signal is in allowed range.
 *
 * @param[in] value Signal to check.
 *
 * @return true if in range, false otherwise.
 */
bool sr439_obj_end_msg_fl_mcu_master_clock_error_is_in_range(uint8_t value);

/**
 * Encode given signal by applying scaling and offset.
 *
 * @param[in] value Signal to encode.
 *
 * @return Encoded signal.
 */
uint8_t sr439_obj_end_msg_fl_rf_temperature_too_low_encode(double value);

/**
 * Decode given signal by applying scaling and offset.
 *
 * @param[in] value Signal to decode.
 *
 * @return Decoded signal.
 */
double sr439_obj_end_msg_fl_rf_temperature_too_low_decode(uint8_t value);

/**
 * Check that given signal is in allowed range.
 *
 * @param[in] value Signal to check.
 *
 * @return true if in range, false otherwise.
 */
bool sr439_obj_end_msg_fl_rf_temperature_too_low_is_in_range(uint8_t value);

/**
 * Encode given signal by applying scaling and offset.
 *
 * @param[in] value Signal to encode.
 *
 * @return Encoded signal.
 */
uint8_t sr439_obj_end_msg_fl_rf_temperature_too_high_encode(double value);

/**
 * Decode given signal by applying scaling and offset.
 *
 * @param[in] value Signal to decode.
 *
 * @return Decoded signal.
 */
double sr439_obj_end_msg_fl_rf_temperature_too_high_decode(uint8_t value);

/**
 * Check that given signal is in allowed range.
 *
 * @param[in] value Signal to check.
 *
 * @return true if in range, false otherwise.
 */
bool sr439_obj_end_msg_fl_rf_temperature_too_high_is_in_range(uint8_t value);

/**
 * Encode given signal by applying scaling and offset.
 *
 * @param[in] value Signal to encode.
 *
 * @return Encoded signal.
 */
uint8_t sr439_obj_end_msg_fl_battery_voltage_too_low_encode(double value);

/**
 * Decode given signal by applying scaling and offset.
 *
 * @param[in] value Signal to decode.
 *
 * @return Decoded signal.
 */
double sr439_obj_end_msg_fl_battery_voltage_too_low_decode(uint8_t value);

/**
 * Check that given signal is in allowed range.
 *
 * @param[in] value Signal to check.
 *
 * @return true if in range, false otherwise.
 */
bool sr439_obj_end_msg_fl_battery_voltage_too_low_is_in_range(uint8_t value);

/**
 * Encode given signal by applying scaling and offset.
 *
 * @param[in] value Signal to encode.
 *
 * @return Encoded signal.
 */
uint8_t sr439_obj_end_msg_fl_battery_voltage_too_high_encode(double value);

/**
 * Decode given signal by applying scaling and offset.
 *
 * @param[in] value Signal to decode.
 *
 * @return Decoded signal.
 */
double sr439_obj_end_msg_fl_battery_voltage_too_high_decode(uint8_t value);

/**
 * Check that given signal is in allowed range.
 *
 * @param[in] value Signal to check.
 *
 * @return true if in range, false otherwise.
 */
bool sr439_obj_end_msg_fl_battery_voltage_too_high_is_in_range(uint8_t value);

/**
 * Encode given signal by applying scaling and offset.
 *
 * @param[in] value Signal to encode.
 *
 * @return Encoded signal.
 */
uint8_t sr439_obj_end_msg_fl_rf_voltage2_too_high_encode(double value);

/**
 * Decode given signal by applying scaling and offset.
 *
 * @param[in] value Signal to decode.
 *
 * @return Decoded signal.
 */
double sr439_obj_end_msg_fl_rf_voltage2_too_high_decode(uint8_t value);

/**
 * Check that given signal is in allowed range.
 *
 * @param[in] value Signal to check.
 *
 * @return true if in range, false otherwise.
 */
bool sr439_obj_end_msg_fl_rf_voltage2_too_high_is_in_range(uint8_t value);

/**
 * Encode given signal by applying scaling and offset.
 *
 * @param[in] value Signal to encode.
 *
 * @return Encoded signal.
 */
uint8_t sr439_obj_end_msg_fl_rf_voltage2_too_low_encode(double value);

/**
 * Decode given signal by applying scaling and offset.
 *
 * @param[in] value Signal to decode.
 *
 * @return Decoded signal.
 */
double sr439_obj_end_msg_fl_rf_voltage2_too_low_decode(uint8_t value);

/**
 * Check that given signal is in allowed range.
 *
 * @param[in] value Signal to check.
 *
 * @return true if in range, false otherwise.
 */
bool sr439_obj_end_msg_fl_rf_voltage2_too_low_is_in_range(uint8_t value);

/**
 * Encode given signal by applying scaling and offset.
 *
 * @param[in] value Signal to encode.
 *
 * @return Encoded signal.
 */
uint8_t sr439_obj_end_msg_fl_rf_voltage1_too_high_encode(double value);

/**
 * Decode given signal by applying scaling and offset.
 *
 * @param[in] value Signal to decode.
 *
 * @return Decoded signal.
 */
double sr439_obj_end_msg_fl_rf_voltage1_too_high_decode(uint8_t value);

/**
 * Check that given signal is in allowed range.
 *
 * @param[in] value Signal to check.
 *
 * @return true if in range, false otherwise.
 */
bool sr439_obj_end_msg_fl_rf_voltage1_too_high_is_in_range(uint8_t value);

/**
 * Encode given signal by applying scaling and offset.
 *
 * @param[in] value Signal to encode.
 *
 * @return Encoded signal.
 */
uint8_t sr439_obj_end_msg_fl_invalid_steering_angle_signal_encode(double value);

/**
 * Decode given signal by applying scaling and offset.
 *
 * @param[in] value Signal to decode.
 *
 * @return Decoded signal.
 */
double sr439_obj_end_msg_fl_invalid_steering_angle_signal_decode(uint8_t value);

/**
 * Check that given signal is in allowed range.
 *
 * @param[in] value Signal to check.
 *
 * @return true if in range, false otherwise.
 */
bool sr439_obj_end_msg_fl_invalid_steering_angle_signal_is_in_range(uint8_t value);

/**
 * Encode given signal by applying scaling and offset.
 *
 * @param[in] value Signal to encode.
 *
 * @return Encoded signal.
 */
uint8_t sr439_obj_end_msg_fl_invalid_yaw_rate_signal_encode(double value);

/**
 * Decode given signal by applying scaling and offset.
 *
 * @param[in] value Signal to decode.
 *
 * @return Decoded signal.
 */
double sr439_obj_end_msg_fl_invalid_yaw_rate_signal_decode(uint8_t value);

/**
 * Check that given signal is in allowed range.
 *
 * @param[in] value Signal to check.
 *
 * @return true if in range, false otherwise.
 */
bool sr439_obj_end_msg_fl_invalid_yaw_rate_signal_is_in_range(uint8_t value);

/**
 * Encode given signal by applying scaling and offset.
 *
 * @param[in] value Signal to encode.
 *
 * @return Encoded signal.
 */
uint8_t sr439_obj_end_msg_fl_invalid_vehicle_speed_signal_encode(double value);

/**
 * Decode given signal by applying scaling and offset.
 *
 * @param[in] value Signal to decode.
 *
 * @return Decoded signal.
 */
double sr439_obj_end_msg_fl_invalid_vehicle_speed_signal_decode(uint8_t value);

/**
 * Check that given signal is in allowed range.
 *
 * @param[in] value Signal to check.
 *
 * @return true if in range, false otherwise.
 */
bool sr439_obj_end_msg_fl_invalid_vehicle_speed_signal_is_in_range(uint8_t value);

/**
 * Encode given signal by applying scaling and offset.
 *
 * @param[in] value Signal to encode.
 *
 * @return Encoded signal.
 */
uint8_t sr439_obj_end_msg_fl_missing_calibration_encode(double value);

/**
 * Decode given signal by applying scaling and offset.
 *
 * @param[in] value Signal to decode.
 *
 * @return Decoded signal.
 */
double sr439_obj_end_msg_fl_missing_calibration_decode(uint8_t value);

/**
 * Check that given signal is in allowed range.
 *
 * @param[in] value Signal to check.
 *
 * @return true if in range, false otherwise.
 */
bool sr439_obj_end_msg_fl_missing_calibration_is_in_range(uint8_t value);

/**
 * Encode given signal by applying scaling and offset.
 *
 * @param[in] value Signal to encode.
 *
 * @return Encoded signal.
 */
uint8_t sr439_obj_end_msg_fl_rf_sensor_fault_encode(double value);

/**
 * Decode given signal by applying scaling and offset.
 *
 * @param[in] value Signal to decode.
 *
 * @return Decoded signal.
 */
double sr439_obj_end_msg_fl_rf_sensor_fault_decode(uint8_t value);

/**
 * Check that given signal is in allowed range.
 *
 * @param[in] value Signal to check.
 *
 * @return true if in range, false otherwise.
 */
bool sr439_obj_end_msg_fl_rf_sensor_fault_is_in_range(uint8_t value);

/**
 * Encode given signal by applying scaling and offset.
 *
 * @param[in] value Signal to encode.
 *
 * @return Encoded signal.
 */
uint8_t sr439_obj_end_msg_fl_g_sensor_fault_encode(double value);

/**
 * Decode given signal by applying scaling and offset.
 *
 * @param[in] value Signal to decode.
 *
 * @return Decoded signal.
 */
double sr439_obj_end_msg_fl_g_sensor_fault_decode(uint8_t value);

/**
 * Check that given signal is in allowed range.
 *
 * @param[in] value Signal to check.
 *
 * @return true if in range, false otherwise.
 */
bool sr439_obj_end_msg_fl_g_sensor_fault_is_in_range(uint8_t value);

/**
 * Encode given signal by applying scaling and offset.
 *
 * @param[in] value Signal to encode.
 *
 * @return Encoded signal.
 */
uint8_t sr439_obj_end_msg_fl_mcu_memory_error_encode(double value);

/**
 * Decode given signal by applying scaling and offset.
 *
 * @param[in] value Signal to decode.
 *
 * @return Decoded signal.
 */
double sr439_obj_end_msg_fl_mcu_memory_error_decode(uint8_t value);

/**
 * Check that given signal is in allowed range.
 *
 * @param[in] value Signal to check.
 *
 * @return true if in range, false otherwise.
 */
bool sr439_obj_end_msg_fl_mcu_memory_error_is_in_range(uint8_t value);

/**
 * Encode given signal by applying scaling and offset.
 *
 * @param[in] value Signal to encode.
 *
 * @return Encoded signal.
 */
uint8_t sr439_obj_end_msg_fl_mcu_error_encode(double value);

/**
 * Decode given signal by applying scaling and offset.
 *
 * @param[in] value Signal to decode.
 *
 * @return Decoded signal.
 */
double sr439_obj_end_msg_fl_mcu_error_decode(uint8_t value);

/**
 * Check that given signal is in allowed range.
 *
 * @param[in] value Signal to check.
 *
 * @return true if in range, false otherwise.
 */
bool sr439_obj_end_msg_fl_mcu_error_is_in_range(uint8_t value);

/**
 * Encode given signal by applying scaling and offset.
 *
 * @param[in] value Signal to encode.
 *
 * @return Encoded signal.
 */
uint8_t sr439_obj_end_msg_fl_radar_mount_position_shift_error_encode(double value);

/**
 * Decode given signal by applying scaling and offset.
 *
 * @param[in] value Signal to decode.
 *
 * @return Decoded signal.
 */
double sr439_obj_end_msg_fl_radar_mount_position_shift_error_decode(uint8_t value);

/**
 * Check that given signal is in allowed range.
 *
 * @param[in] value Signal to check.
 *
 * @return true if in range, false otherwise.
 */
bool sr439_obj_end_msg_fl_radar_mount_position_shift_error_is_in_range(uint8_t value);

/**
 * Encode given signal by applying scaling and offset.
 *
 * @param[in] value Signal to encode.
 *
 * @return Encoded signal.
 */
uint8_t sr439_obj_end_msg_fl_radar_block_encode(double value);

/**
 * Decode given signal by applying scaling and offset.
 *
 * @param[in] value Signal to decode.
 *
 * @return Decoded signal.
 */
double sr439_obj_end_msg_fl_radar_block_decode(uint8_t value);

/**
 * Check that given signal is in allowed range.
 *
 * @param[in] value Signal to check.
 *
 * @return true if in range, false otherwise.
 */
bool sr439_obj_end_msg_fl_radar_block_is_in_range(uint8_t value);

/**
 * Encode given signal by applying scaling and offset.
 *
 * @param[in] value Signal to encode.
 *
 * @return Encoded signal.
 */
uint8_t sr439_obj_end_msg_fl_invalid_ign_sta_signal_encode(double value);

/**
 * Decode given signal by applying scaling and offset.
 *
 * @param[in] value Signal to decode.
 *
 * @return Decoded signal.
 */
double sr439_obj_end_msg_fl_invalid_ign_sta_signal_decode(uint8_t value);

/**
 * Check that given signal is in allowed range.
 *
 * @param[in] value Signal to check.
 *
 * @return true if in range, false otherwise.
 */
bool sr439_obj_end_msg_fl_invalid_ign_sta_signal_is_in_range(uint8_t value);

/**
 * Encode given signal by applying scaling and offset.
 *
 * @param[in] value Signal to encode.
 *
 * @return Encoded signal.
 */
uint8_t sr439_obj_end_msg_fl_invalid_gear_position_signal_encode(double value);

/**
 * Decode given signal by applying scaling and offset.
 *
 * @param[in] value Signal to decode.
 *
 * @return Decoded signal.
 */
double sr439_obj_end_msg_fl_invalid_gear_position_signal_decode(uint8_t value);

/**
 * Check that given signal is in allowed range.
 *
 * @param[in] value Signal to check.
 *
 * @return true if in range, false otherwise.
 */
bool sr439_obj_end_msg_fl_invalid_gear_position_signal_is_in_range(uint8_t value);

/**
 * Encode given signal by applying scaling and offset.
 *
 * @param[in] value Signal to encode.
 *
 * @return Encoded signal.
 */
uint8_t sr439_obj_end_msg_fl_radar_yaw_rate_raw_v_encode(double value);

/**
 * Decode given signal by applying scaling and offset.
 *
 * @param[in] value Signal to decode.
 *
 * @return Decoded signal.
 */
double sr439_obj_end_msg_fl_radar_yaw_rate_raw_v_decode(uint8_t value);

/**
 * Check that given signal is in allowed range.
 *
 * @param[in] value Signal to check.
 *
 * @return true if in range, false otherwise.
 */
bool sr439_obj_end_msg_fl_radar_yaw_rate_raw_v_is_in_range(uint8_t value);

/**
 * Pack message Obj_End_Msg_RL.
 *
 * @param[out] dst_p Buffer to pack the message into.
 * @param[in] src_p Data to pack.
 * @param[in] size Size of dst_p.
 *
 * @return Size of packed data, or negative error code.
 */
int sr439_obj_end_msg_rl_pack(
    uint8_t *dst_p,
    const struct sr439_obj_end_msg_rl_t *src_p,
    size_t size);

/**
 * Unpack message Obj_End_Msg_RL.
 *
 * @param[out] dst_p Object to unpack the message into.
 * @param[in] src_p Message to unpack.
 * @param[in] size Size of src_p.
 *
 * @return zero(0) or negative error code.
 */
int sr439_obj_end_msg_rl_unpack(
    struct sr439_obj_end_msg_rl_t *dst_p,
    const uint8_t *src_p,
    size_t size);

/**
 * Init message fields to default values from Obj_End_Msg_RL.
 *
 * @param[in] msg_p Message to init.
 *
 * @return zero(0) on success or (-1) in case of nullptr argument.
 */
int sr439_obj_end_msg_rl_init(struct sr439_obj_end_msg_rl_t *msg_p);

/**
 * Encode given signal by applying scaling and offset.
 *
 * @param[in] value Signal to encode.
 *
 * @return Encoded signal.
 */
uint8_t sr439_obj_end_msg_rl_rf_voltage1_too_low_encode(double value);

/**
 * Decode given signal by applying scaling and offset.
 *
 * @param[in] value Signal to decode.
 *
 * @return Decoded signal.
 */
double sr439_obj_end_msg_rl_rf_voltage1_too_low_decode(uint8_t value);

/**
 * Check that given signal is in allowed range.
 *
 * @param[in] value Signal to check.
 *
 * @return true if in range, false otherwise.
 */
bool sr439_obj_end_msg_rl_rf_voltage1_too_low_is_in_range(uint8_t value);

/**
 * Encode given signal by applying scaling and offset.
 *
 * @param[in] value Signal to encode.
 *
 * @return Encoded signal.
 */
uint8_t sr439_obj_end_msg_rl_mcu_voltage_too_low_encode(double value);

/**
 * Decode given signal by applying scaling and offset.
 *
 * @param[in] value Signal to decode.
 *
 * @return Decoded signal.
 */
double sr439_obj_end_msg_rl_mcu_voltage_too_low_decode(uint8_t value);

/**
 * Check that given signal is in allowed range.
 *
 * @param[in] value Signal to check.
 *
 * @return true if in range, false otherwise.
 */
bool sr439_obj_end_msg_rl_mcu_voltage_too_low_is_in_range(uint8_t value);

/**
 * Encode given signal by applying scaling and offset.
 *
 * @param[in] value Signal to encode.
 *
 * @return Encoded signal.
 */
uint8_t sr439_obj_end_msg_rl_mcu_voltage_too_high_encode(double value);

/**
 * Decode given signal by applying scaling and offset.
 *
 * @param[in] value Signal to decode.
 *
 * @return Decoded signal.
 */
double sr439_obj_end_msg_rl_mcu_voltage_too_high_decode(uint8_t value);

/**
 * Check that given signal is in allowed range.
 *
 * @param[in] value Signal to check.
 *
 * @return true if in range, false otherwise.
 */
bool sr439_obj_end_msg_rl_mcu_voltage_too_high_is_in_range(uint8_t value);

/**
 * Encode given signal by applying scaling and offset.
 *
 * @param[in] value Signal to encode.
 *
 * @return Encoded signal.
 */
uint8_t sr439_obj_end_msg_rl_mcu_temperature_too_low_encode(double value);

/**
 * Decode given signal by applying scaling and offset.
 *
 * @param[in] value Signal to decode.
 *
 * @return Decoded signal.
 */
double sr439_obj_end_msg_rl_mcu_temperature_too_low_decode(uint8_t value);

/**
 * Check that given signal is in allowed range.
 *
 * @param[in] value Signal to check.
 *
 * @return true if in range, false otherwise.
 */
bool sr439_obj_end_msg_rl_mcu_temperature_too_low_is_in_range(uint8_t value);

/**
 * Encode given signal by applying scaling and offset.
 *
 * @param[in] value Signal to encode.
 *
 * @return Encoded signal.
 */
uint8_t sr439_obj_end_msg_rl_mcu_temperature_too_high_encode(double value);

/**
 * Decode given signal by applying scaling and offset.
 *
 * @param[in] value Signal to decode.
 *
 * @return Decoded signal.
 */
double sr439_obj_end_msg_rl_mcu_temperature_too_high_decode(uint8_t value);

/**
 * Check that given signal is in allowed range.
 *
 * @param[in] value Signal to check.
 *
 * @return true if in range, false otherwise.
 */
bool sr439_obj_end_msg_rl_mcu_temperature_too_high_is_in_range(uint8_t value);

/**
 * Encode given signal by applying scaling and offset.
 *
 * @param[in] value Signal to encode.
 *
 * @return Encoded signal.
 */
uint8_t sr439_obj_end_msg_rl_lost_communication_with_camera_encode(double value);

/**
 * Decode given signal by applying scaling and offset.
 *
 * @param[in] value Signal to decode.
 *
 * @return Decoded signal.
 */
double sr439_obj_end_msg_rl_lost_communication_with_camera_decode(uint8_t value);

/**
 * Check that given signal is in allowed range.
 *
 * @param[in] value Signal to check.
 *
 * @return true if in range, false otherwise.
 */
bool sr439_obj_end_msg_rl_lost_communication_with_camera_is_in_range(uint8_t value);

/**
 * Encode given signal by applying scaling and offset.
 *
 * @param[in] value Signal to encode.
 *
 * @return Encoded signal.
 */
uint8_t sr439_obj_end_msg_rl_communication_bus_off_encode(double value);

/**
 * Decode given signal by applying scaling and offset.
 *
 * @param[in] value Signal to decode.
 *
 * @return Decoded signal.
 */
double sr439_obj_end_msg_rl_communication_bus_off_decode(uint8_t value);

/**
 * Check that given signal is in allowed range.
 *
 * @param[in] value Signal to check.
 *
 * @return true if in range, false otherwise.
 */
bool sr439_obj_end_msg_rl_communication_bus_off_is_in_range(uint8_t value);

/**
 * Encode given signal by applying scaling and offset.
 *
 * @param[in] value Signal to encode.
 *
 * @return Encoded signal.
 */
uint8_t sr439_obj_end_msg_rl_radar_sleep_flag_encode(double value);

/**
 * Decode given signal by applying scaling and offset.
 *
 * @param[in] value Signal to decode.
 *
 * @return Decoded signal.
 */
double sr439_obj_end_msg_rl_radar_sleep_flag_decode(uint8_t value);

/**
 * Check that given signal is in allowed range.
 *
 * @param[in] value Signal to check.
 *
 * @return true if in range, false otherwise.
 */
bool sr439_obj_end_msg_rl_radar_sleep_flag_is_in_range(uint8_t value);

/**
 * Encode given signal by applying scaling and offset.
 *
 * @param[in] value Signal to encode.
 *
 * @return Encoded signal.
 */
uint8_t sr439_obj_end_msg_rl_mcu_master_clock_error_encode(double value);

/**
 * Decode given signal by applying scaling and offset.
 *
 * @param[in] value Signal to decode.
 *
 * @return Decoded signal.
 */
double sr439_obj_end_msg_rl_mcu_master_clock_error_decode(uint8_t value);

/**
 * Check that given signal is in allowed range.
 *
 * @param[in] value Signal to check.
 *
 * @return true if in range, false otherwise.
 */
bool sr439_obj_end_msg_rl_mcu_master_clock_error_is_in_range(uint8_t value);

/**
 * Encode given signal by applying scaling and offset.
 *
 * @param[in] value Signal to encode.
 *
 * @return Encoded signal.
 */
uint8_t sr439_obj_end_msg_rl_rf_temperature_too_low_encode(double value);

/**
 * Decode given signal by applying scaling and offset.
 *
 * @param[in] value Signal to decode.
 *
 * @return Decoded signal.
 */
double sr439_obj_end_msg_rl_rf_temperature_too_low_decode(uint8_t value);

/**
 * Check that given signal is in allowed range.
 *
 * @param[in] value Signal to check.
 *
 * @return true if in range, false otherwise.
 */
bool sr439_obj_end_msg_rl_rf_temperature_too_low_is_in_range(uint8_t value);

/**
 * Encode given signal by applying scaling and offset.
 *
 * @param[in] value Signal to encode.
 *
 * @return Encoded signal.
 */
uint8_t sr439_obj_end_msg_rl_rf_temperature_too_high_encode(double value);

/**
 * Decode given signal by applying scaling and offset.
 *
 * @param[in] value Signal to decode.
 *
 * @return Decoded signal.
 */
double sr439_obj_end_msg_rl_rf_temperature_too_high_decode(uint8_t value);

/**
 * Check that given signal is in allowed range.
 *
 * @param[in] value Signal to check.
 *
 * @return true if in range, false otherwise.
 */
bool sr439_obj_end_msg_rl_rf_temperature_too_high_is_in_range(uint8_t value);

/**
 * Encode given signal by applying scaling and offset.
 *
 * @param[in] value Signal to encode.
 *
 * @return Encoded signal.
 */
uint8_t sr439_obj_end_msg_rl_battery_voltage_too_low_encode(double value);

/**
 * Decode given signal by applying scaling and offset.
 *
 * @param[in] value Signal to decode.
 *
 * @return Decoded signal.
 */
double sr439_obj_end_msg_rl_battery_voltage_too_low_decode(uint8_t value);

/**
 * Check that given signal is in allowed range.
 *
 * @param[in] value Signal to check.
 *
 * @return true if in range, false otherwise.
 */
bool sr439_obj_end_msg_rl_battery_voltage_too_low_is_in_range(uint8_t value);

/**
 * Encode given signal by applying scaling and offset.
 *
 * @param[in] value Signal to encode.
 *
 * @return Encoded signal.
 */
uint8_t sr439_obj_end_msg_rl_battery_voltage_too_high_encode(double value);

/**
 * Decode given signal by applying scaling and offset.
 *
 * @param[in] value Signal to decode.
 *
 * @return Decoded signal.
 */
double sr439_obj_end_msg_rl_battery_voltage_too_high_decode(uint8_t value);

/**
 * Check that given signal is in allowed range.
 *
 * @param[in] value Signal to check.
 *
 * @return true if in range, false otherwise.
 */
bool sr439_obj_end_msg_rl_battery_voltage_too_high_is_in_range(uint8_t value);

/**
 * Encode given signal by applying scaling and offset.
 *
 * @param[in] value Signal to encode.
 *
 * @return Encoded signal.
 */
uint8_t sr439_obj_end_msg_rl_rf_voltage2_too_high_encode(double value);

/**
 * Decode given signal by applying scaling and offset.
 *
 * @param[in] value Signal to decode.
 *
 * @return Decoded signal.
 */
double sr439_obj_end_msg_rl_rf_voltage2_too_high_decode(uint8_t value);

/**
 * Check that given signal is in allowed range.
 *
 * @param[in] value Signal to check.
 *
 * @return true if in range, false otherwise.
 */
bool sr439_obj_end_msg_rl_rf_voltage2_too_high_is_in_range(uint8_t value);

/**
 * Encode given signal by applying scaling and offset.
 *
 * @param[in] value Signal to encode.
 *
 * @return Encoded signal.
 */
uint8_t sr439_obj_end_msg_rl_rf_voltage2_too_low_encode(double value);

/**
 * Decode given signal by applying scaling and offset.
 *
 * @param[in] value Signal to decode.
 *
 * @return Decoded signal.
 */
double sr439_obj_end_msg_rl_rf_voltage2_too_low_decode(uint8_t value);

/**
 * Check that given signal is in allowed range.
 *
 * @param[in] value Signal to check.
 *
 * @return true if in range, false otherwise.
 */
bool sr439_obj_end_msg_rl_rf_voltage2_too_low_is_in_range(uint8_t value);

/**
 * Encode given signal by applying scaling and offset.
 *
 * @param[in] value Signal to encode.
 *
 * @return Encoded signal.
 */
uint8_t sr439_obj_end_msg_rl_rf_voltage1_too_high_encode(double value);

/**
 * Decode given signal by applying scaling and offset.
 *
 * @param[in] value Signal to decode.
 *
 * @return Decoded signal.
 */
double sr439_obj_end_msg_rl_rf_voltage1_too_high_decode(uint8_t value);

/**
 * Check that given signal is in allowed range.
 *
 * @param[in] value Signal to check.
 *
 * @return true if in range, false otherwise.
 */
bool sr439_obj_end_msg_rl_rf_voltage1_too_high_is_in_range(uint8_t value);

/**
 * Encode given signal by applying scaling and offset.
 *
 * @param[in] value Signal to encode.
 *
 * @return Encoded signal.
 */
uint8_t sr439_obj_end_msg_rl_invalid_steering_angle_signal_encode(double value);

/**
 * Decode given signal by applying scaling and offset.
 *
 * @param[in] value Signal to decode.
 *
 * @return Decoded signal.
 */
double sr439_obj_end_msg_rl_invalid_steering_angle_signal_decode(uint8_t value);

/**
 * Check that given signal is in allowed range.
 *
 * @param[in] value Signal to check.
 *
 * @return true if in range, false otherwise.
 */
bool sr439_obj_end_msg_rl_invalid_steering_angle_signal_is_in_range(uint8_t value);

/**
 * Encode given signal by applying scaling and offset.
 *
 * @param[in] value Signal to encode.
 *
 * @return Encoded signal.
 */
uint8_t sr439_obj_end_msg_rl_invalid_yaw_rate_signal_encode(double value);

/**
 * Decode given signal by applying scaling and offset.
 *
 * @param[in] value Signal to decode.
 *
 * @return Decoded signal.
 */
double sr439_obj_end_msg_rl_invalid_yaw_rate_signal_decode(uint8_t value);

/**
 * Check that given signal is in allowed range.
 *
 * @param[in] value Signal to check.
 *
 * @return true if in range, false otherwise.
 */
bool sr439_obj_end_msg_rl_invalid_yaw_rate_signal_is_in_range(uint8_t value);

/**
 * Encode given signal by applying scaling and offset.
 *
 * @param[in] value Signal to encode.
 *
 * @return Encoded signal.
 */
uint8_t sr439_obj_end_msg_rl_invalid_vehicle_speed_signal_encode(double value);

/**
 * Decode given signal by applying scaling and offset.
 *
 * @param[in] value Signal to decode.
 *
 * @return Decoded signal.
 */
double sr439_obj_end_msg_rl_invalid_vehicle_speed_signal_decode(uint8_t value);

/**
 * Check that given signal is in allowed range.
 *
 * @param[in] value Signal to check.
 *
 * @return true if in range, false otherwise.
 */
bool sr439_obj_end_msg_rl_invalid_vehicle_speed_signal_is_in_range(uint8_t value);

/**
 * Encode given signal by applying scaling and offset.
 *
 * @param[in] value Signal to encode.
 *
 * @return Encoded signal.
 */
uint8_t sr439_obj_end_msg_rl_missing_calibration_encode(double value);

/**
 * Decode given signal by applying scaling and offset.
 *
 * @param[in] value Signal to decode.
 *
 * @return Decoded signal.
 */
double sr439_obj_end_msg_rl_missing_calibration_decode(uint8_t value);

/**
 * Check that given signal is in allowed range.
 *
 * @param[in] value Signal to check.
 *
 * @return true if in range, false otherwise.
 */
bool sr439_obj_end_msg_rl_missing_calibration_is_in_range(uint8_t value);

/**
 * Encode given signal by applying scaling and offset.
 *
 * @param[in] value Signal to encode.
 *
 * @return Encoded signal.
 */
uint8_t sr439_obj_end_msg_rl_rf_sensor_fault_encode(double value);

/**
 * Decode given signal by applying scaling and offset.
 *
 * @param[in] value Signal to decode.
 *
 * @return Decoded signal.
 */
double sr439_obj_end_msg_rl_rf_sensor_fault_decode(uint8_t value);

/**
 * Check that given signal is in allowed range.
 *
 * @param[in] value Signal to check.
 *
 * @return true if in range, false otherwise.
 */
bool sr439_obj_end_msg_rl_rf_sensor_fault_is_in_range(uint8_t value);

/**
 * Encode given signal by applying scaling and offset.
 *
 * @param[in] value Signal to encode.
 *
 * @return Encoded signal.
 */
uint8_t sr439_obj_end_msg_rl_g_sensor_fault_encode(double value);

/**
 * Decode given signal by applying scaling and offset.
 *
 * @param[in] value Signal to decode.
 *
 * @return Decoded signal.
 */
double sr439_obj_end_msg_rl_g_sensor_fault_decode(uint8_t value);

/**
 * Check that given signal is in allowed range.
 *
 * @param[in] value Signal to check.
 *
 * @return true if in range, false otherwise.
 */
bool sr439_obj_end_msg_rl_g_sensor_fault_is_in_range(uint8_t value);

/**
 * Encode given signal by applying scaling and offset.
 *
 * @param[in] value Signal to encode.
 *
 * @return Encoded signal.
 */
uint8_t sr439_obj_end_msg_rl_mcu_memory_error_encode(double value);

/**
 * Decode given signal by applying scaling and offset.
 *
 * @param[in] value Signal to decode.
 *
 * @return Decoded signal.
 */
double sr439_obj_end_msg_rl_mcu_memory_error_decode(uint8_t value);

/**
 * Check that given signal is in allowed range.
 *
 * @param[in] value Signal to check.
 *
 * @return true if in range, false otherwise.
 */
bool sr439_obj_end_msg_rl_mcu_memory_error_is_in_range(uint8_t value);

/**
 * Encode given signal by applying scaling and offset.
 *
 * @param[in] value Signal to encode.
 *
 * @return Encoded signal.
 */
uint8_t sr439_obj_end_msg_rl_mcu_error_encode(double value);

/**
 * Decode given signal by applying scaling and offset.
 *
 * @param[in] value Signal to decode.
 *
 * @return Decoded signal.
 */
double sr439_obj_end_msg_rl_mcu_error_decode(uint8_t value);

/**
 * Check that given signal is in allowed range.
 *
 * @param[in] value Signal to check.
 *
 * @return true if in range, false otherwise.
 */
bool sr439_obj_end_msg_rl_mcu_error_is_in_range(uint8_t value);

/**
 * Encode given signal by applying scaling and offset.
 *
 * @param[in] value Signal to encode.
 *
 * @return Encoded signal.
 */
uint8_t sr439_obj_end_msg_rl_radar_mount_position_shift_error_encode(double value);

/**
 * Decode given signal by applying scaling and offset.
 *
 * @param[in] value Signal to decode.
 *
 * @return Decoded signal.
 */
double sr439_obj_end_msg_rl_radar_mount_position_shift_error_decode(uint8_t value);

/**
 * Check that given signal is in allowed range.
 *
 * @param[in] value Signal to check.
 *
 * @return true if in range, false otherwise.
 */
bool sr439_obj_end_msg_rl_radar_mount_position_shift_error_is_in_range(uint8_t value);

/**
 * Encode given signal by applying scaling and offset.
 *
 * @param[in] value Signal to encode.
 *
 * @return Encoded signal.
 */
uint8_t sr439_obj_end_msg_rl_radar_block_encode(double value);

/**
 * Decode given signal by applying scaling and offset.
 *
 * @param[in] value Signal to decode.
 *
 * @return Decoded signal.
 */
double sr439_obj_end_msg_rl_radar_block_decode(uint8_t value);

/**
 * Check that given signal is in allowed range.
 *
 * @param[in] value Signal to check.
 *
 * @return true if in range, false otherwise.
 */
bool sr439_obj_end_msg_rl_radar_block_is_in_range(uint8_t value);

/**
 * Encode given signal by applying scaling and offset.
 *
 * @param[in] value Signal to encode.
 *
 * @return Encoded signal.
 */
uint8_t sr439_obj_end_msg_rl_invalid_ign_sta_signal_encode(double value);

/**
 * Decode given signal by applying scaling and offset.
 *
 * @param[in] value Signal to decode.
 *
 * @return Decoded signal.
 */
double sr439_obj_end_msg_rl_invalid_ign_sta_signal_decode(uint8_t value);

/**
 * Check that given signal is in allowed range.
 *
 * @param[in] value Signal to check.
 *
 * @return true if in range, false otherwise.
 */
bool sr439_obj_end_msg_rl_invalid_ign_sta_signal_is_in_range(uint8_t value);

/**
 * Encode given signal by applying scaling and offset.
 *
 * @param[in] value Signal to encode.
 *
 * @return Encoded signal.
 */
uint8_t sr439_obj_end_msg_rl_invalid_gear_position_signal_encode(double value);

/**
 * Decode given signal by applying scaling and offset.
 *
 * @param[in] value Signal to decode.
 *
 * @return Decoded signal.
 */
double sr439_obj_end_msg_rl_invalid_gear_position_signal_decode(uint8_t value);

/**
 * Check that given signal is in allowed range.
 *
 * @param[in] value Signal to check.
 *
 * @return true if in range, false otherwise.
 */
bool sr439_obj_end_msg_rl_invalid_gear_position_signal_is_in_range(uint8_t value);

/**
 * Encode given signal by applying scaling and offset.
 *
 * @param[in] value Signal to encode.
 *
 * @return Encoded signal.
 */
uint8_t sr439_obj_end_msg_rl_radar_yaw_rate_raw_v_encode(double value);

/**
 * Decode given signal by applying scaling and offset.
 *
 * @param[in] value Signal to decode.
 *
 * @return Decoded signal.
 */
double sr439_obj_end_msg_rl_radar_yaw_rate_raw_v_decode(uint8_t value);

/**
 * Check that given signal is in allowed range.
 *
 * @param[in] value Signal to check.
 *
 * @return true if in range, false otherwise.
 */
bool sr439_obj_end_msg_rl_radar_yaw_rate_raw_v_is_in_range(uint8_t value);

/**
 * Pack message Obj_Quality_Info_RR.
 *
 * @param[out] dst_p Buffer to pack the message into.
 * @param[in] src_p Data to pack.
 * @param[in] size Size of dst_p.
 *
 * @return Size of packed data, or negative error code.
 */
int sr439_obj_quality_info_rr_pack(
    uint8_t *dst_p,
    const struct sr439_obj_quality_info_rr_t *src_p,
    size_t size);

/**
 * Unpack message Obj_Quality_Info_RR.
 *
 * @param[out] dst_p Object to unpack the message into.
 * @param[in] src_p Message to unpack.
 * @param[in] size Size of src_p.
 *
 * @return zero(0) or negative error code.
 */
int sr439_obj_quality_info_rr_unpack(
    struct sr439_obj_quality_info_rr_t *dst_p,
    const uint8_t *src_p,
    size_t size);

/**
 * Init message fields to default values from Obj_Quality_Info_RR.
 *
 * @param[in] msg_p Message to init.
 *
 * @return zero(0) on success or (-1) in case of nullptr argument.
 */
int sr439_obj_quality_info_rr_init(struct sr439_obj_quality_info_rr_t *msg_p);

/**
 * Encode given signal by applying scaling and offset.
 *
 * @param[in] value Signal to encode.
 *
 * @return Encoded signal.
 */
uint8_t sr439_obj_quality_info_rr_obj_id_encode(double value);

/**
 * Decode given signal by applying scaling and offset.
 *
 * @param[in] value Signal to decode.
 *
 * @return Decoded signal.
 */
double sr439_obj_quality_info_rr_obj_id_decode(uint8_t value);

/**
 * Check that given signal is in allowed range.
 *
 * @param[in] value Signal to check.
 *
 * @return true if in range, false otherwise.
 */
bool sr439_obj_quality_info_rr_obj_id_is_in_range(uint8_t value);

/**
 * Encode given signal by applying scaling and offset.
 *
 * @param[in] value Signal to encode.
 *
 * @return Encoded signal.
 */
uint8_t sr439_obj_quality_info_rr_obj_dist_lon_rms_encode(double value);

/**
 * Decode given signal by applying scaling and offset.
 *
 * @param[in] value Signal to decode.
 *
 * @return Decoded signal.
 */
double sr439_obj_quality_info_rr_obj_dist_lon_rms_decode(uint8_t value);

/**
 * Check that given signal is in allowed range.
 *
 * @param[in] value Signal to check.
 *
 * @return true if in range, false otherwise.
 */
bool sr439_obj_quality_info_rr_obj_dist_lon_rms_is_in_range(uint8_t value);

/**
 * Encode given signal by applying scaling and offset.
 *
 * @param[in] value Signal to encode.
 *
 * @return Encoded signal.
 */
uint8_t sr439_obj_quality_info_rr_obj_dist_lat_rms_encode(double value);

/**
 * Decode given signal by applying scaling and offset.
 *
 * @param[in] value Signal to decode.
 *
 * @return Decoded signal.
 */
double sr439_obj_quality_info_rr_obj_dist_lat_rms_decode(uint8_t value);

/**
 * Check that given signal is in allowed range.
 *
 * @param[in] value Signal to check.
 *
 * @return true if in range, false otherwise.
 */
bool sr439_obj_quality_info_rr_obj_dist_lat_rms_is_in_range(uint8_t value);

/**
 * Encode given signal by applying scaling and offset.
 *
 * @param[in] value Signal to encode.
 *
 * @return Encoded signal.
 */
uint8_t sr439_obj_quality_info_rr_obj_vel_lon_rms_encode(double value);

/**
 * Decode given signal by applying scaling and offset.
 *
 * @param[in] value Signal to decode.
 *
 * @return Decoded signal.
 */
double sr439_obj_quality_info_rr_obj_vel_lon_rms_decode(uint8_t value);

/**
 * Check that given signal is in allowed range.
 *
 * @param[in] value Signal to check.
 *
 * @return true if in range, false otherwise.
 */
bool sr439_obj_quality_info_rr_obj_vel_lon_rms_is_in_range(uint8_t value);

/**
 * Encode given signal by applying scaling and offset.
 *
 * @param[in] value Signal to encode.
 *
 * @return Encoded signal.
 */
uint8_t sr439_obj_quality_info_rr_obj_vel_lat_rms_encode(double value);

/**
 * Decode given signal by applying scaling and offset.
 *
 * @param[in] value Signal to decode.
 *
 * @return Decoded signal.
 */
double sr439_obj_quality_info_rr_obj_vel_lat_rms_decode(uint8_t value);

/**
 * Check that given signal is in allowed range.
 *
 * @param[in] value Signal to check.
 *
 * @return true if in range, false otherwise.
 */
bool sr439_obj_quality_info_rr_obj_vel_lat_rms_is_in_range(uint8_t value);

/**
 * Encode given signal by applying scaling and offset.
 *
 * @param[in] value Signal to encode.
 *
 * @return Encoded signal.
 */
uint8_t sr439_obj_quality_info_rr_obj_acc_lon_rms_encode(double value);

/**
 * Decode given signal by applying scaling and offset.
 *
 * @param[in] value Signal to decode.
 *
 * @return Decoded signal.
 */
double sr439_obj_quality_info_rr_obj_acc_lon_rms_decode(uint8_t value);

/**
 * Check that given signal is in allowed range.
 *
 * @param[in] value Signal to check.
 *
 * @return true if in range, false otherwise.
 */
bool sr439_obj_quality_info_rr_obj_acc_lon_rms_is_in_range(uint8_t value);

/**
 * Encode given signal by applying scaling and offset.
 *
 * @param[in] value Signal to encode.
 *
 * @return Encoded signal.
 */
uint8_t sr439_obj_quality_info_rr_obj_acc_lat_rms_encode(double value);

/**
 * Decode given signal by applying scaling and offset.
 *
 * @param[in] value Signal to decode.
 *
 * @return Decoded signal.
 */
double sr439_obj_quality_info_rr_obj_acc_lat_rms_decode(uint8_t value);

/**
 * Check that given signal is in allowed range.
 *
 * @param[in] value Signal to check.
 *
 * @return true if in range, false otherwise.
 */
bool sr439_obj_quality_info_rr_obj_acc_lat_rms_is_in_range(uint8_t value);

/**
 * Encode given signal by applying scaling and offset.
 *
 * @param[in] value Signal to encode.
 *
 * @return Encoded signal.
 */
uint8_t sr439_obj_quality_info_rr_obj_cipv_encode(double value);

/**
 * Decode given signal by applying scaling and offset.
 *
 * @param[in] value Signal to decode.
 *
 * @return Decoded signal.
 */
double sr439_obj_quality_info_rr_obj_cipv_decode(uint8_t value);

/**
 * Check that given signal is in allowed range.
 *
 * @param[in] value Signal to check.
 *
 * @return true if in range, false otherwise.
 */
bool sr439_obj_quality_info_rr_obj_cipv_is_in_range(uint8_t value);

/**
 * Encode given signal by applying scaling and offset.
 *
 * @param[in] value Signal to encode.
 *
 * @return Encoded signal.
 */
uint8_t sr439_obj_quality_info_rr_obj_prob_of_class_encode(double value);

/**
 * Decode given signal by applying scaling and offset.
 *
 * @param[in] value Signal to decode.
 *
 * @return Decoded signal.
 */
double sr439_obj_quality_info_rr_obj_prob_of_class_decode(uint8_t value);

/**
 * Check that given signal is in allowed range.
 *
 * @param[in] value Signal to check.
 *
 * @return true if in range, false otherwise.
 */
bool sr439_obj_quality_info_rr_obj_prob_of_class_is_in_range(uint8_t value);

/**
 * Encode given signal by applying scaling and offset.
 *
 * @param[in] value Signal to encode.
 *
 * @return Encoded signal.
 */
uint8_t sr439_obj_quality_info_rr_obj_prob_of_exist_encode(double value);

/**
 * Decode given signal by applying scaling and offset.
 *
 * @param[in] value Signal to decode.
 *
 * @return Decoded signal.
 */
double sr439_obj_quality_info_rr_obj_prob_of_exist_decode(uint8_t value);

/**
 * Check that given signal is in allowed range.
 *
 * @param[in] value Signal to check.
 *
 * @return true if in range, false otherwise.
 */
bool sr439_obj_quality_info_rr_obj_prob_of_exist_is_in_range(uint8_t value);

/**
 * Encode given signal by applying scaling and offset.
 *
 * @param[in] value Signal to encode.
 *
 * @return Encoded signal.
 */
uint8_t sr439_obj_quality_info_rr_obj_meas_state_encode(double value);

/**
 * Decode given signal by applying scaling and offset.
 *
 * @param[in] value Signal to decode.
 *
 * @return Decoded signal.
 */
double sr439_obj_quality_info_rr_obj_meas_state_decode(uint8_t value);

/**
 * Check that given signal is in allowed range.
 *
 * @param[in] value Signal to check.
 *
 * @return true if in range, false otherwise.
 */
bool sr439_obj_quality_info_rr_obj_meas_state_is_in_range(uint8_t value);

/**
 * Pack message Obj_Quality_Info_FR.
 *
 * @param[out] dst_p Buffer to pack the message into.
 * @param[in] src_p Data to pack.
 * @param[in] size Size of dst_p.
 *
 * @return Size of packed data, or negative error code.
 */
int sr439_obj_quality_info_fr_pack(
    uint8_t *dst_p,
    const struct sr439_obj_quality_info_fr_t *src_p,
    size_t size);

/**
 * Unpack message Obj_Quality_Info_FR.
 *
 * @param[out] dst_p Object to unpack the message into.
 * @param[in] src_p Message to unpack.
 * @param[in] size Size of src_p.
 *
 * @return zero(0) or negative error code.
 */
int sr439_obj_quality_info_fr_unpack(
    struct sr439_obj_quality_info_fr_t *dst_p,
    const uint8_t *src_p,
    size_t size);

/**
 * Init message fields to default values from Obj_Quality_Info_FR.
 *
 * @param[in] msg_p Message to init.
 *
 * @return zero(0) on success or (-1) in case of nullptr argument.
 */
int sr439_obj_quality_info_fr_init(struct sr439_obj_quality_info_fr_t *msg_p);

/**
 * Encode given signal by applying scaling and offset.
 *
 * @param[in] value Signal to encode.
 *
 * @return Encoded signal.
 */
uint8_t sr439_obj_quality_info_fr_obj_id_encode(double value);

/**
 * Decode given signal by applying scaling and offset.
 *
 * @param[in] value Signal to decode.
 *
 * @return Decoded signal.
 */
double sr439_obj_quality_info_fr_obj_id_decode(uint8_t value);

/**
 * Check that given signal is in allowed range.
 *
 * @param[in] value Signal to check.
 *
 * @return true if in range, false otherwise.
 */
bool sr439_obj_quality_info_fr_obj_id_is_in_range(uint8_t value);

/**
 * Encode given signal by applying scaling and offset.
 *
 * @param[in] value Signal to encode.
 *
 * @return Encoded signal.
 */
uint8_t sr439_obj_quality_info_fr_obj_dist_lon_rms_encode(double value);

/**
 * Decode given signal by applying scaling and offset.
 *
 * @param[in] value Signal to decode.
 *
 * @return Decoded signal.
 */
double sr439_obj_quality_info_fr_obj_dist_lon_rms_decode(uint8_t value);

/**
 * Check that given signal is in allowed range.
 *
 * @param[in] value Signal to check.
 *
 * @return true if in range, false otherwise.
 */
bool sr439_obj_quality_info_fr_obj_dist_lon_rms_is_in_range(uint8_t value);

/**
 * Encode given signal by applying scaling and offset.
 *
 * @param[in] value Signal to encode.
 *
 * @return Encoded signal.
 */
uint8_t sr439_obj_quality_info_fr_obj_dist_lat_rms_encode(double value);

/**
 * Decode given signal by applying scaling and offset.
 *
 * @param[in] value Signal to decode.
 *
 * @return Decoded signal.
 */
double sr439_obj_quality_info_fr_obj_dist_lat_rms_decode(uint8_t value);

/**
 * Check that given signal is in allowed range.
 *
 * @param[in] value Signal to check.
 *
 * @return true if in range, false otherwise.
 */
bool sr439_obj_quality_info_fr_obj_dist_lat_rms_is_in_range(uint8_t value);

/**
 * Encode given signal by applying scaling and offset.
 *
 * @param[in] value Signal to encode.
 *
 * @return Encoded signal.
 */
uint8_t sr439_obj_quality_info_fr_obj_vel_lon_rms_encode(double value);

/**
 * Decode given signal by applying scaling and offset.
 *
 * @param[in] value Signal to decode.
 *
 * @return Decoded signal.
 */
double sr439_obj_quality_info_fr_obj_vel_lon_rms_decode(uint8_t value);

/**
 * Check that given signal is in allowed range.
 *
 * @param[in] value Signal to check.
 *
 * @return true if in range, false otherwise.
 */
bool sr439_obj_quality_info_fr_obj_vel_lon_rms_is_in_range(uint8_t value);

/**
 * Encode given signal by applying scaling and offset.
 *
 * @param[in] value Signal to encode.
 *
 * @return Encoded signal.
 */
uint8_t sr439_obj_quality_info_fr_obj_vel_lat_rms_encode(double value);

/**
 * Decode given signal by applying scaling and offset.
 *
 * @param[in] value Signal to decode.
 *
 * @return Decoded signal.
 */
double sr439_obj_quality_info_fr_obj_vel_lat_rms_decode(uint8_t value);

/**
 * Check that given signal is in allowed range.
 *
 * @param[in] value Signal to check.
 *
 * @return true if in range, false otherwise.
 */
bool sr439_obj_quality_info_fr_obj_vel_lat_rms_is_in_range(uint8_t value);

/**
 * Encode given signal by applying scaling and offset.
 *
 * @param[in] value Signal to encode.
 *
 * @return Encoded signal.
 */
uint8_t sr439_obj_quality_info_fr_obj_acc_lon_rms_encode(double value);

/**
 * Decode given signal by applying scaling and offset.
 *
 * @param[in] value Signal to decode.
 *
 * @return Decoded signal.
 */
double sr439_obj_quality_info_fr_obj_acc_lon_rms_decode(uint8_t value);

/**
 * Check that given signal is in allowed range.
 *
 * @param[in] value Signal to check.
 *
 * @return true if in range, false otherwise.
 */
bool sr439_obj_quality_info_fr_obj_acc_lon_rms_is_in_range(uint8_t value);

/**
 * Encode given signal by applying scaling and offset.
 *
 * @param[in] value Signal to encode.
 *
 * @return Encoded signal.
 */
uint8_t sr439_obj_quality_info_fr_obj_acc_lat_rms_encode(double value);

/**
 * Decode given signal by applying scaling and offset.
 *
 * @param[in] value Signal to decode.
 *
 * @return Decoded signal.
 */
double sr439_obj_quality_info_fr_obj_acc_lat_rms_decode(uint8_t value);

/**
 * Check that given signal is in allowed range.
 *
 * @param[in] value Signal to check.
 *
 * @return true if in range, false otherwise.
 */
bool sr439_obj_quality_info_fr_obj_acc_lat_rms_is_in_range(uint8_t value);

/**
 * Encode given signal by applying scaling and offset.
 *
 * @param[in] value Signal to encode.
 *
 * @return Encoded signal.
 */
uint8_t sr439_obj_quality_info_fr_obj_cipv_encode(double value);

/**
 * Decode given signal by applying scaling and offset.
 *
 * @param[in] value Signal to decode.
 *
 * @return Decoded signal.
 */
double sr439_obj_quality_info_fr_obj_cipv_decode(uint8_t value);

/**
 * Check that given signal is in allowed range.
 *
 * @param[in] value Signal to check.
 *
 * @return true if in range, false otherwise.
 */
bool sr439_obj_quality_info_fr_obj_cipv_is_in_range(uint8_t value);

/**
 * Encode given signal by applying scaling and offset.
 *
 * @param[in] value Signal to encode.
 *
 * @return Encoded signal.
 */
uint8_t sr439_obj_quality_info_fr_obj_prob_of_class_encode(double value);

/**
 * Decode given signal by applying scaling and offset.
 *
 * @param[in] value Signal to decode.
 *
 * @return Decoded signal.
 */
double sr439_obj_quality_info_fr_obj_prob_of_class_decode(uint8_t value);

/**
 * Check that given signal is in allowed range.
 *
 * @param[in] value Signal to check.
 *
 * @return true if in range, false otherwise.
 */
bool sr439_obj_quality_info_fr_obj_prob_of_class_is_in_range(uint8_t value);

/**
 * Encode given signal by applying scaling and offset.
 *
 * @param[in] value Signal to encode.
 *
 * @return Encoded signal.
 */
uint8_t sr439_obj_quality_info_fr_obj_prob_of_exist_encode(double value);

/**
 * Decode given signal by applying scaling and offset.
 *
 * @param[in] value Signal to decode.
 *
 * @return Decoded signal.
 */
double sr439_obj_quality_info_fr_obj_prob_of_exist_decode(uint8_t value);

/**
 * Check that given signal is in allowed range.
 *
 * @param[in] value Signal to check.
 *
 * @return true if in range, false otherwise.
 */
bool sr439_obj_quality_info_fr_obj_prob_of_exist_is_in_range(uint8_t value);

/**
 * Encode given signal by applying scaling and offset.
 *
 * @param[in] value Signal to encode.
 *
 * @return Encoded signal.
 */
uint8_t sr439_obj_quality_info_fr_obj_meas_state_encode(double value);

/**
 * Decode given signal by applying scaling and offset.
 *
 * @param[in] value Signal to decode.
 *
 * @return Decoded signal.
 */
double sr439_obj_quality_info_fr_obj_meas_state_decode(uint8_t value);

/**
 * Check that given signal is in allowed range.
 *
 * @param[in] value Signal to check.
 *
 * @return true if in range, false otherwise.
 */
bool sr439_obj_quality_info_fr_obj_meas_state_is_in_range(uint8_t value);

/**
 * Pack message Obj_Quality_Info_FL.
 *
 * @param[out] dst_p Buffer to pack the message into.
 * @param[in] src_p Data to pack.
 * @param[in] size Size of dst_p.
 *
 * @return Size of packed data, or negative error code.
 */
int sr439_obj_quality_info_fl_pack(
    uint8_t *dst_p,
    const struct sr439_obj_quality_info_fl_t *src_p,
    size_t size);

/**
 * Unpack message Obj_Quality_Info_FL.
 *
 * @param[out] dst_p Object to unpack the message into.
 * @param[in] src_p Message to unpack.
 * @param[in] size Size of src_p.
 *
 * @return zero(0) or negative error code.
 */
int sr439_obj_quality_info_fl_unpack(
    struct sr439_obj_quality_info_fl_t *dst_p,
    const uint8_t *src_p,
    size_t size);

/**
 * Init message fields to default values from Obj_Quality_Info_FL.
 *
 * @param[in] msg_p Message to init.
 *
 * @return zero(0) on success or (-1) in case of nullptr argument.
 */
int sr439_obj_quality_info_fl_init(struct sr439_obj_quality_info_fl_t *msg_p);

/**
 * Encode given signal by applying scaling and offset.
 *
 * @param[in] value Signal to encode.
 *
 * @return Encoded signal.
 */
uint8_t sr439_obj_quality_info_fl_obj_id_encode(double value);

/**
 * Decode given signal by applying scaling and offset.
 *
 * @param[in] value Signal to decode.
 *
 * @return Decoded signal.
 */
double sr439_obj_quality_info_fl_obj_id_decode(uint8_t value);

/**
 * Check that given signal is in allowed range.
 *
 * @param[in] value Signal to check.
 *
 * @return true if in range, false otherwise.
 */
bool sr439_obj_quality_info_fl_obj_id_is_in_range(uint8_t value);

/**
 * Encode given signal by applying scaling and offset.
 *
 * @param[in] value Signal to encode.
 *
 * @return Encoded signal.
 */
uint8_t sr439_obj_quality_info_fl_obj_dist_lon_rms_encode(double value);

/**
 * Decode given signal by applying scaling and offset.
 *
 * @param[in] value Signal to decode.
 *
 * @return Decoded signal.
 */
double sr439_obj_quality_info_fl_obj_dist_lon_rms_decode(uint8_t value);

/**
 * Check that given signal is in allowed range.
 *
 * @param[in] value Signal to check.
 *
 * @return true if in range, false otherwise.
 */
bool sr439_obj_quality_info_fl_obj_dist_lon_rms_is_in_range(uint8_t value);

/**
 * Encode given signal by applying scaling and offset.
 *
 * @param[in] value Signal to encode.
 *
 * @return Encoded signal.
 */
uint8_t sr439_obj_quality_info_fl_obj_dist_lat_rms_encode(double value);

/**
 * Decode given signal by applying scaling and offset.
 *
 * @param[in] value Signal to decode.
 *
 * @return Decoded signal.
 */
double sr439_obj_quality_info_fl_obj_dist_lat_rms_decode(uint8_t value);

/**
 * Check that given signal is in allowed range.
 *
 * @param[in] value Signal to check.
 *
 * @return true if in range, false otherwise.
 */
bool sr439_obj_quality_info_fl_obj_dist_lat_rms_is_in_range(uint8_t value);

/**
 * Encode given signal by applying scaling and offset.
 *
 * @param[in] value Signal to encode.
 *
 * @return Encoded signal.
 */
uint8_t sr439_obj_quality_info_fl_obj_vel_lon_rms_encode(double value);

/**
 * Decode given signal by applying scaling and offset.
 *
 * @param[in] value Signal to decode.
 *
 * @return Decoded signal.
 */
double sr439_obj_quality_info_fl_obj_vel_lon_rms_decode(uint8_t value);

/**
 * Check that given signal is in allowed range.
 *
 * @param[in] value Signal to check.
 *
 * @return true if in range, false otherwise.
 */
bool sr439_obj_quality_info_fl_obj_vel_lon_rms_is_in_range(uint8_t value);

/**
 * Encode given signal by applying scaling and offset.
 *
 * @param[in] value Signal to encode.
 *
 * @return Encoded signal.
 */
uint8_t sr439_obj_quality_info_fl_obj_vel_lat_rms_encode(double value);

/**
 * Decode given signal by applying scaling and offset.
 *
 * @param[in] value Signal to decode.
 *
 * @return Decoded signal.
 */
double sr439_obj_quality_info_fl_obj_vel_lat_rms_decode(uint8_t value);

/**
 * Check that given signal is in allowed range.
 *
 * @param[in] value Signal to check.
 *
 * @return true if in range, false otherwise.
 */
bool sr439_obj_quality_info_fl_obj_vel_lat_rms_is_in_range(uint8_t value);

/**
 * Encode given signal by applying scaling and offset.
 *
 * @param[in] value Signal to encode.
 *
 * @return Encoded signal.
 */
uint8_t sr439_obj_quality_info_fl_obj_acc_lon_rms_encode(double value);

/**
 * Decode given signal by applying scaling and offset.
 *
 * @param[in] value Signal to decode.
 *
 * @return Decoded signal.
 */
double sr439_obj_quality_info_fl_obj_acc_lon_rms_decode(uint8_t value);

/**
 * Check that given signal is in allowed range.
 *
 * @param[in] value Signal to check.
 *
 * @return true if in range, false otherwise.
 */
bool sr439_obj_quality_info_fl_obj_acc_lon_rms_is_in_range(uint8_t value);

/**
 * Encode given signal by applying scaling and offset.
 *
 * @param[in] value Signal to encode.
 *
 * @return Encoded signal.
 */
uint8_t sr439_obj_quality_info_fl_obj_acc_lat_rms_encode(double value);

/**
 * Decode given signal by applying scaling and offset.
 *
 * @param[in] value Signal to decode.
 *
 * @return Decoded signal.
 */
double sr439_obj_quality_info_fl_obj_acc_lat_rms_decode(uint8_t value);

/**
 * Check that given signal is in allowed range.
 *
 * @param[in] value Signal to check.
 *
 * @return true if in range, false otherwise.
 */
bool sr439_obj_quality_info_fl_obj_acc_lat_rms_is_in_range(uint8_t value);

/**
 * Encode given signal by applying scaling and offset.
 *
 * @param[in] value Signal to encode.
 *
 * @return Encoded signal.
 */
uint8_t sr439_obj_quality_info_fl_obj_cipv_encode(double value);

/**
 * Decode given signal by applying scaling and offset.
 *
 * @param[in] value Signal to decode.
 *
 * @return Decoded signal.
 */
double sr439_obj_quality_info_fl_obj_cipv_decode(uint8_t value);

/**
 * Check that given signal is in allowed range.
 *
 * @param[in] value Signal to check.
 *
 * @return true if in range, false otherwise.
 */
bool sr439_obj_quality_info_fl_obj_cipv_is_in_range(uint8_t value);

/**
 * Encode given signal by applying scaling and offset.
 *
 * @param[in] value Signal to encode.
 *
 * @return Encoded signal.
 */
uint8_t sr439_obj_quality_info_fl_obj_prob_of_class_encode(double value);

/**
 * Decode given signal by applying scaling and offset.
 *
 * @param[in] value Signal to decode.
 *
 * @return Decoded signal.
 */
double sr439_obj_quality_info_fl_obj_prob_of_class_decode(uint8_t value);

/**
 * Check that given signal is in allowed range.
 *
 * @param[in] value Signal to check.
 *
 * @return true if in range, false otherwise.
 */
bool sr439_obj_quality_info_fl_obj_prob_of_class_is_in_range(uint8_t value);

/**
 * Encode given signal by applying scaling and offset.
 *
 * @param[in] value Signal to encode.
 *
 * @return Encoded signal.
 */
uint8_t sr439_obj_quality_info_fl_obj_prob_of_exist_encode(double value);

/**
 * Decode given signal by applying scaling and offset.
 *
 * @param[in] value Signal to decode.
 *
 * @return Decoded signal.
 */
double sr439_obj_quality_info_fl_obj_prob_of_exist_decode(uint8_t value);

/**
 * Check that given signal is in allowed range.
 *
 * @param[in] value Signal to check.
 *
 * @return true if in range, false otherwise.
 */
bool sr439_obj_quality_info_fl_obj_prob_of_exist_is_in_range(uint8_t value);

/**
 * Encode given signal by applying scaling and offset.
 *
 * @param[in] value Signal to encode.
 *
 * @return Encoded signal.
 */
uint8_t sr439_obj_quality_info_fl_obj_meas_state_encode(double value);

/**
 * Decode given signal by applying scaling and offset.
 *
 * @param[in] value Signal to decode.
 *
 * @return Decoded signal.
 */
double sr439_obj_quality_info_fl_obj_meas_state_decode(uint8_t value);

/**
 * Check that given signal is in allowed range.
 *
 * @param[in] value Signal to check.
 *
 * @return true if in range, false otherwise.
 */
bool sr439_obj_quality_info_fl_obj_meas_state_is_in_range(uint8_t value);

/**
 * Pack message Obj_General_Info_RR.
 *
 * @param[out] dst_p Buffer to pack the message into.
 * @param[in] src_p Data to pack.
 * @param[in] size Size of dst_p.
 *
 * @return Size of packed data, or negative error code.
 */
int sr439_obj_general_info_rr_pack(
    uint8_t *dst_p,
    const struct sr439_obj_general_info_rr_t *src_p,
    size_t size);

/**
 * Unpack message Obj_General_Info_RR.
 *
 * @param[out] dst_p Object to unpack the message into.
 * @param[in] src_p Message to unpack.
 * @param[in] size Size of src_p.
 *
 * @return zero(0) or negative error code.
 */
int sr439_obj_general_info_rr_unpack(
    struct sr439_obj_general_info_rr_t *dst_p,
    const uint8_t *src_p,
    size_t size);

/**
 * Init message fields to default values from Obj_General_Info_RR.
 *
 * @param[in] msg_p Message to init.
 *
 * @return zero(0) on success or (-1) in case of nullptr argument.
 */
int sr439_obj_general_info_rr_init(struct sr439_obj_general_info_rr_t *msg_p);

/**
 * Encode given signal by applying scaling and offset.
 *
 * @param[in] value Signal to encode.
 *
 * @return Encoded signal.
 */
uint8_t sr439_obj_general_info_rr_obj_id_encode(double value);

/**
 * Decode given signal by applying scaling and offset.
 *
 * @param[in] value Signal to decode.
 *
 * @return Decoded signal.
 */
double sr439_obj_general_info_rr_obj_id_decode(uint8_t value);

/**
 * Check that given signal is in allowed range.
 *
 * @param[in] value Signal to check.
 *
 * @return true if in range, false otherwise.
 */
bool sr439_obj_general_info_rr_obj_id_is_in_range(uint8_t value);

/**
 * Encode given signal by applying scaling and offset.
 *
 * @param[in] value Signal to encode.
 *
 * @return Encoded signal.
 */
uint16_t sr439_obj_general_info_rr_obj_dist_long_encode(double value);

/**
 * Decode given signal by applying scaling and offset.
 *
 * @param[in] value Signal to decode.
 *
 * @return Decoded signal.
 */
double sr439_obj_general_info_rr_obj_dist_long_decode(uint16_t value);

/**
 * Check that given signal is in allowed range.
 *
 * @param[in] value Signal to check.
 *
 * @return true if in range, false otherwise.
 */
bool sr439_obj_general_info_rr_obj_dist_long_is_in_range(uint16_t value);

/**
 * Encode given signal by applying scaling and offset.
 *
 * @param[in] value Signal to encode.
 *
 * @return Encoded signal.
 */
uint16_t sr439_obj_general_info_rr_obj_dist_lat_encode(double value);

/**
 * Decode given signal by applying scaling and offset.
 *
 * @param[in] value Signal to decode.
 *
 * @return Decoded signal.
 */
double sr439_obj_general_info_rr_obj_dist_lat_decode(uint16_t value);

/**
 * Check that given signal is in allowed range.
 *
 * @param[in] value Signal to check.
 *
 * @return true if in range, false otherwise.
 */
bool sr439_obj_general_info_rr_obj_dist_lat_is_in_range(uint16_t value);

/**
 * Encode given signal by applying scaling and offset.
 *
 * @param[in] value Signal to encode.
 *
 * @return Encoded signal.
 */
uint8_t sr439_obj_general_info_rr_obj_dyn_prop_encode(double value);

/**
 * Decode given signal by applying scaling and offset.
 *
 * @param[in] value Signal to decode.
 *
 * @return Decoded signal.
 */
double sr439_obj_general_info_rr_obj_dyn_prop_decode(uint8_t value);

/**
 * Check that given signal is in allowed range.
 *
 * @param[in] value Signal to check.
 *
 * @return true if in range, false otherwise.
 */
bool sr439_obj_general_info_rr_obj_dyn_prop_is_in_range(uint8_t value);

/**
 * Encode given signal by applying scaling and offset.
 *
 * @param[in] value Signal to encode.
 *
 * @return Encoded signal.
 */
uint16_t sr439_obj_general_info_rr_obj_vrel_long_encode(double value);

/**
 * Decode given signal by applying scaling and offset.
 *
 * @param[in] value Signal to decode.
 *
 * @return Decoded signal.
 */
double sr439_obj_general_info_rr_obj_vrel_long_decode(uint16_t value);

/**
 * Check that given signal is in allowed range.
 *
 * @param[in] value Signal to check.
 *
 * @return true if in range, false otherwise.
 */
bool sr439_obj_general_info_rr_obj_vrel_long_is_in_range(uint16_t value);

/**
 * Encode given signal by applying scaling and offset.
 *
 * @param[in] value Signal to encode.
 *
 * @return Encoded signal.
 */
uint16_t sr439_obj_general_info_rr_obj_vrel_lat_encode(double value);

/**
 * Decode given signal by applying scaling and offset.
 *
 * @param[in] value Signal to decode.
 *
 * @return Decoded signal.
 */
double sr439_obj_general_info_rr_obj_vrel_lat_decode(uint16_t value);

/**
 * Check that given signal is in allowed range.
 *
 * @param[in] value Signal to check.
 *
 * @return true if in range, false otherwise.
 */
bool sr439_obj_general_info_rr_obj_vrel_lat_is_in_range(uint16_t value);

/**
 * Pack message Obj_General_Info_FR.
 *
 * @param[out] dst_p Buffer to pack the message into.
 * @param[in] src_p Data to pack.
 * @param[in] size Size of dst_p.
 *
 * @return Size of packed data, or negative error code.
 */
int sr439_obj_general_info_fr_pack(
    uint8_t *dst_p,
    const struct sr439_obj_general_info_fr_t *src_p,
    size_t size);

/**
 * Unpack message Obj_General_Info_FR.
 *
 * @param[out] dst_p Object to unpack the message into.
 * @param[in] src_p Message to unpack.
 * @param[in] size Size of src_p.
 *
 * @return zero(0) or negative error code.
 */
int sr439_obj_general_info_fr_unpack(
    struct sr439_obj_general_info_fr_t *dst_p,
    const uint8_t *src_p,
    size_t size);

/**
 * Init message fields to default values from Obj_General_Info_FR.
 *
 * @param[in] msg_p Message to init.
 *
 * @return zero(0) on success or (-1) in case of nullptr argument.
 */
int sr439_obj_general_info_fr_init(struct sr439_obj_general_info_fr_t *msg_p);

/**
 * Encode given signal by applying scaling and offset.
 *
 * @param[in] value Signal to encode.
 *
 * @return Encoded signal.
 */
uint8_t sr439_obj_general_info_fr_obj_id_encode(double value);

/**
 * Decode given signal by applying scaling and offset.
 *
 * @param[in] value Signal to decode.
 *
 * @return Decoded signal.
 */
double sr439_obj_general_info_fr_obj_id_decode(uint8_t value);

/**
 * Check that given signal is in allowed range.
 *
 * @param[in] value Signal to check.
 *
 * @return true if in range, false otherwise.
 */
bool sr439_obj_general_info_fr_obj_id_is_in_range(uint8_t value);

/**
 * Encode given signal by applying scaling and offset.
 *
 * @param[in] value Signal to encode.
 *
 * @return Encoded signal.
 */
uint16_t sr439_obj_general_info_fr_obj_dist_long_encode(double value);

/**
 * Decode given signal by applying scaling and offset.
 *
 * @param[in] value Signal to decode.
 *
 * @return Decoded signal.
 */
double sr439_obj_general_info_fr_obj_dist_long_decode(uint16_t value);

/**
 * Check that given signal is in allowed range.
 *
 * @param[in] value Signal to check.
 *
 * @return true if in range, false otherwise.
 */
bool sr439_obj_general_info_fr_obj_dist_long_is_in_range(uint16_t value);

/**
 * Encode given signal by applying scaling and offset.
 *
 * @param[in] value Signal to encode.
 *
 * @return Encoded signal.
 */
uint16_t sr439_obj_general_info_fr_obj_dist_lat_encode(double value);

/**
 * Decode given signal by applying scaling and offset.
 *
 * @param[in] value Signal to decode.
 *
 * @return Decoded signal.
 */
double sr439_obj_general_info_fr_obj_dist_lat_decode(uint16_t value);

/**
 * Check that given signal is in allowed range.
 *
 * @param[in] value Signal to check.
 *
 * @return true if in range, false otherwise.
 */
bool sr439_obj_general_info_fr_obj_dist_lat_is_in_range(uint16_t value);

/**
 * Encode given signal by applying scaling and offset.
 *
 * @param[in] value Signal to encode.
 *
 * @return Encoded signal.
 */
uint8_t sr439_obj_general_info_fr_obj_dyn_prop_encode(double value);

/**
 * Decode given signal by applying scaling and offset.
 *
 * @param[in] value Signal to decode.
 *
 * @return Decoded signal.
 */
double sr439_obj_general_info_fr_obj_dyn_prop_decode(uint8_t value);

/**
 * Check that given signal is in allowed range.
 *
 * @param[in] value Signal to check.
 *
 * @return true if in range, false otherwise.
 */
bool sr439_obj_general_info_fr_obj_dyn_prop_is_in_range(uint8_t value);

/**
 * Encode given signal by applying scaling and offset.
 *
 * @param[in] value Signal to encode.
 *
 * @return Encoded signal.
 */
uint16_t sr439_obj_general_info_fr_obj_vrel_long_encode(double value);

/**
 * Decode given signal by applying scaling and offset.
 *
 * @param[in] value Signal to decode.
 *
 * @return Decoded signal.
 */
double sr439_obj_general_info_fr_obj_vrel_long_decode(uint16_t value);

/**
 * Check that given signal is in allowed range.
 *
 * @param[in] value Signal to check.
 *
 * @return true if in range, false otherwise.
 */
bool sr439_obj_general_info_fr_obj_vrel_long_is_in_range(uint16_t value);

/**
 * Encode given signal by applying scaling and offset.
 *
 * @param[in] value Signal to encode.
 *
 * @return Encoded signal.
 */
uint16_t sr439_obj_general_info_fr_obj_vrel_lat_encode(double value);

/**
 * Decode given signal by applying scaling and offset.
 *
 * @param[in] value Signal to decode.
 *
 * @return Decoded signal.
 */
double sr439_obj_general_info_fr_obj_vrel_lat_decode(uint16_t value);

/**
 * Check that given signal is in allowed range.
 *
 * @param[in] value Signal to check.
 *
 * @return true if in range, false otherwise.
 */
bool sr439_obj_general_info_fr_obj_vrel_lat_is_in_range(uint16_t value);

/**
 * Pack message Obj_General_Info_FL.
 *
 * @param[out] dst_p Buffer to pack the message into.
 * @param[in] src_p Data to pack.
 * @param[in] size Size of dst_p.
 *
 * @return Size of packed data, or negative error code.
 */
int sr439_obj_general_info_fl_pack(
    uint8_t *dst_p,
    const struct sr439_obj_general_info_fl_t *src_p,
    size_t size);

/**
 * Unpack message Obj_General_Info_FL.
 *
 * @param[out] dst_p Object to unpack the message into.
 * @param[in] src_p Message to unpack.
 * @param[in] size Size of src_p.
 *
 * @return zero(0) or negative error code.
 */
int sr439_obj_general_info_fl_unpack(
    struct sr439_obj_general_info_fl_t *dst_p,
    const uint8_t *src_p,
    size_t size);

/**
 * Init message fields to default values from Obj_General_Info_FL.
 *
 * @param[in] msg_p Message to init.
 *
 * @return zero(0) on success or (-1) in case of nullptr argument.
 */
int sr439_obj_general_info_fl_init(struct sr439_obj_general_info_fl_t *msg_p);

/**
 * Encode given signal by applying scaling and offset.
 *
 * @param[in] value Signal to encode.
 *
 * @return Encoded signal.
 */
uint8_t sr439_obj_general_info_fl_obj_id_encode(double value);

/**
 * Decode given signal by applying scaling and offset.
 *
 * @param[in] value Signal to decode.
 *
 * @return Decoded signal.
 */
double sr439_obj_general_info_fl_obj_id_decode(uint8_t value);

/**
 * Check that given signal is in allowed range.
 *
 * @param[in] value Signal to check.
 *
 * @return true if in range, false otherwise.
 */
bool sr439_obj_general_info_fl_obj_id_is_in_range(uint8_t value);

/**
 * Encode given signal by applying scaling and offset.
 *
 * @param[in] value Signal to encode.
 *
 * @return Encoded signal.
 */
uint16_t sr439_obj_general_info_fl_obj_dist_long_encode(double value);

/**
 * Decode given signal by applying scaling and offset.
 *
 * @param[in] value Signal to decode.
 *
 * @return Decoded signal.
 */
double sr439_obj_general_info_fl_obj_dist_long_decode(uint16_t value);

/**
 * Check that given signal is in allowed range.
 *
 * @param[in] value Signal to check.
 *
 * @return true if in range, false otherwise.
 */
bool sr439_obj_general_info_fl_obj_dist_long_is_in_range(uint16_t value);

/**
 * Encode given signal by applying scaling and offset.
 *
 * @param[in] value Signal to encode.
 *
 * @return Encoded signal.
 */
uint16_t sr439_obj_general_info_fl_obj_dist_lat_encode(double value);

/**
 * Decode given signal by applying scaling and offset.
 *
 * @param[in] value Signal to decode.
 *
 * @return Decoded signal.
 */
double sr439_obj_general_info_fl_obj_dist_lat_decode(uint16_t value);

/**
 * Check that given signal is in allowed range.
 *
 * @param[in] value Signal to check.
 *
 * @return true if in range, false otherwise.
 */
bool sr439_obj_general_info_fl_obj_dist_lat_is_in_range(uint16_t value);

/**
 * Encode given signal by applying scaling and offset.
 *
 * @param[in] value Signal to encode.
 *
 * @return Encoded signal.
 */
uint8_t sr439_obj_general_info_fl_obj_dyn_prop_encode(double value);

/**
 * Decode given signal by applying scaling and offset.
 *
 * @param[in] value Signal to decode.
 *
 * @return Decoded signal.
 */
double sr439_obj_general_info_fl_obj_dyn_prop_decode(uint8_t value);

/**
 * Check that given signal is in allowed range.
 *
 * @param[in] value Signal to check.
 *
 * @return true if in range, false otherwise.
 */
bool sr439_obj_general_info_fl_obj_dyn_prop_is_in_range(uint8_t value);

/**
 * Encode given signal by applying scaling and offset.
 *
 * @param[in] value Signal to encode.
 *
 * @return Encoded signal.
 */
uint16_t sr439_obj_general_info_fl_obj_vrel_long_encode(double value);

/**
 * Decode given signal by applying scaling and offset.
 *
 * @param[in] value Signal to decode.
 *
 * @return Decoded signal.
 */
double sr439_obj_general_info_fl_obj_vrel_long_decode(uint16_t value);

/**
 * Check that given signal is in allowed range.
 *
 * @param[in] value Signal to check.
 *
 * @return true if in range, false otherwise.
 */
bool sr439_obj_general_info_fl_obj_vrel_long_is_in_range(uint16_t value);

/**
 * Encode given signal by applying scaling and offset.
 *
 * @param[in] value Signal to encode.
 *
 * @return Encoded signal.
 */
uint16_t sr439_obj_general_info_fl_obj_vrel_lat_encode(double value);

/**
 * Decode given signal by applying scaling and offset.
 *
 * @param[in] value Signal to decode.
 *
 * @return Decoded signal.
 */
double sr439_obj_general_info_fl_obj_vrel_lat_decode(uint16_t value);

/**
 * Check that given signal is in allowed range.
 *
 * @param[in] value Signal to check.
 *
 * @return true if in range, false otherwise.
 */
bool sr439_obj_general_info_fl_obj_vrel_lat_is_in_range(uint16_t value);

/**
 * Pack message Obj_Extended_Info_RR.
 *
 * @param[out] dst_p Buffer to pack the message into.
 * @param[in] src_p Data to pack.
 * @param[in] size Size of dst_p.
 *
 * @return Size of packed data, or negative error code.
 */
int sr439_obj_extended_info_rr_pack(
    uint8_t *dst_p,
    const struct sr439_obj_extended_info_rr_t *src_p,
    size_t size);

/**
 * Unpack message Obj_Extended_Info_RR.
 *
 * @param[out] dst_p Object to unpack the message into.
 * @param[in] src_p Message to unpack.
 * @param[in] size Size of src_p.
 *
 * @return zero(0) or negative error code.
 */
int sr439_obj_extended_info_rr_unpack(
    struct sr439_obj_extended_info_rr_t *dst_p,
    const uint8_t *src_p,
    size_t size);

/**
 * Init message fields to default values from Obj_Extended_Info_RR.
 *
 * @param[in] msg_p Message to init.
 *
 * @return zero(0) on success or (-1) in case of nullptr argument.
 */
int sr439_obj_extended_info_rr_init(struct sr439_obj_extended_info_rr_t *msg_p);

/**
 * Encode given signal by applying scaling and offset.
 *
 * @param[in] value Signal to encode.
 *
 * @return Encoded signal.
 */
uint8_t sr439_obj_extended_info_rr_obj_id_encode(double value);

/**
 * Decode given signal by applying scaling and offset.
 *
 * @param[in] value Signal to decode.
 *
 * @return Decoded signal.
 */
double sr439_obj_extended_info_rr_obj_id_decode(uint8_t value);

/**
 * Check that given signal is in allowed range.
 *
 * @param[in] value Signal to check.
 *
 * @return true if in range, false otherwise.
 */
bool sr439_obj_extended_info_rr_obj_id_is_in_range(uint8_t value);

/**
 * Encode given signal by applying scaling and offset.
 *
 * @param[in] value Signal to encode.
 *
 * @return Encoded signal.
 */
uint16_t sr439_obj_extended_info_rr_obj_arel_lon_encode(double value);

/**
 * Decode given signal by applying scaling and offset.
 *
 * @param[in] value Signal to decode.
 *
 * @return Decoded signal.
 */
double sr439_obj_extended_info_rr_obj_arel_lon_decode(uint16_t value);

/**
 * Check that given signal is in allowed range.
 *
 * @param[in] value Signal to check.
 *
 * @return true if in range, false otherwise.
 */
bool sr439_obj_extended_info_rr_obj_arel_lon_is_in_range(uint16_t value);

/**
 * Encode given signal by applying scaling and offset.
 *
 * @param[in] value Signal to encode.
 *
 * @return Encoded signal.
 */
uint16_t sr439_obj_extended_info_rr_obj_arel_lat_encode(double value);

/**
 * Decode given signal by applying scaling and offset.
 *
 * @param[in] value Signal to decode.
 *
 * @return Decoded signal.
 */
double sr439_obj_extended_info_rr_obj_arel_lat_decode(uint16_t value);

/**
 * Check that given signal is in allowed range.
 *
 * @param[in] value Signal to check.
 *
 * @return true if in range, false otherwise.
 */
bool sr439_obj_extended_info_rr_obj_arel_lat_is_in_range(uint16_t value);

/**
 * Encode given signal by applying scaling and offset.
 *
 * @param[in] value Signal to encode.
 *
 * @return Encoded signal.
 */
uint8_t sr439_obj_extended_info_rr_obj_class_encode(double value);

/**
 * Decode given signal by applying scaling and offset.
 *
 * @param[in] value Signal to decode.
 *
 * @return Decoded signal.
 */
double sr439_obj_extended_info_rr_obj_class_decode(uint8_t value);

/**
 * Check that given signal is in allowed range.
 *
 * @param[in] value Signal to check.
 *
 * @return true if in range, false otherwise.
 */
bool sr439_obj_extended_info_rr_obj_class_is_in_range(uint8_t value);

/**
 * Encode given signal by applying scaling and offset.
 *
 * @param[in] value Signal to encode.
 *
 * @return Encoded signal.
 */
uint16_t sr439_obj_extended_info_rr_obj_orien_angle_encode(double value);

/**
 * Decode given signal by applying scaling and offset.
 *
 * @param[in] value Signal to decode.
 *
 * @return Decoded signal.
 */
double sr439_obj_extended_info_rr_obj_orien_angle_decode(uint16_t value);

/**
 * Check that given signal is in allowed range.
 *
 * @param[in] value Signal to check.
 *
 * @return true if in range, false otherwise.
 */
bool sr439_obj_extended_info_rr_obj_orien_angle_is_in_range(uint16_t value);

/**
 * Encode given signal by applying scaling and offset.
 *
 * @param[in] value Signal to encode.
 *
 * @return Encoded signal.
 */
uint8_t sr439_obj_extended_info_rr_obj_width_encode(double value);

/**
 * Decode given signal by applying scaling and offset.
 *
 * @param[in] value Signal to decode.
 *
 * @return Decoded signal.
 */
double sr439_obj_extended_info_rr_obj_width_decode(uint8_t value);

/**
 * Check that given signal is in allowed range.
 *
 * @param[in] value Signal to check.
 *
 * @return true if in range, false otherwise.
 */
bool sr439_obj_extended_info_rr_obj_width_is_in_range(uint8_t value);

/**
 * Encode given signal by applying scaling and offset.
 *
 * @param[in] value Signal to encode.
 *
 * @return Encoded signal.
 */
uint8_t sr439_obj_extended_info_rr_obj_length_encode(double value);

/**
 * Decode given signal by applying scaling and offset.
 *
 * @param[in] value Signal to decode.
 *
 * @return Decoded signal.
 */
double sr439_obj_extended_info_rr_obj_length_decode(uint8_t value);

/**
 * Check that given signal is in allowed range.
 *
 * @param[in] value Signal to check.
 *
 * @return true if in range, false otherwise.
 */
bool sr439_obj_extended_info_rr_obj_length_is_in_range(uint8_t value);

/**
 * Encode given signal by applying scaling and offset.
 *
 * @param[in] value Signal to encode.
 *
 * @return Encoded signal.
 */
uint8_t sr439_obj_extended_info_rr_obj_height_encode(double value);

/**
 * Decode given signal by applying scaling and offset.
 *
 * @param[in] value Signal to decode.
 *
 * @return Decoded signal.
 */
double sr439_obj_extended_info_rr_obj_height_decode(uint8_t value);

/**
 * Check that given signal is in allowed range.
 *
 * @param[in] value Signal to check.
 *
 * @return true if in range, false otherwise.
 */
bool sr439_obj_extended_info_rr_obj_height_is_in_range(uint8_t value);

/**
 * Pack message Obj_Extended_Info_FR.
 *
 * @param[out] dst_p Buffer to pack the message into.
 * @param[in] src_p Data to pack.
 * @param[in] size Size of dst_p.
 *
 * @return Size of packed data, or negative error code.
 */
int sr439_obj_extended_info_fr_pack(
    uint8_t *dst_p,
    const struct sr439_obj_extended_info_fr_t *src_p,
    size_t size);

/**
 * Unpack message Obj_Extended_Info_FR.
 *
 * @param[out] dst_p Object to unpack the message into.
 * @param[in] src_p Message to unpack.
 * @param[in] size Size of src_p.
 *
 * @return zero(0) or negative error code.
 */
int sr439_obj_extended_info_fr_unpack(
    struct sr439_obj_extended_info_fr_t *dst_p,
    const uint8_t *src_p,
    size_t size);

/**
 * Init message fields to default values from Obj_Extended_Info_FR.
 *
 * @param[in] msg_p Message to init.
 *
 * @return zero(0) on success or (-1) in case of nullptr argument.
 */
int sr439_obj_extended_info_fr_init(struct sr439_obj_extended_info_fr_t *msg_p);

/**
 * Encode given signal by applying scaling and offset.
 *
 * @param[in] value Signal to encode.
 *
 * @return Encoded signal.
 */
uint8_t sr439_obj_extended_info_fr_obj_id_encode(double value);

/**
 * Decode given signal by applying scaling and offset.
 *
 * @param[in] value Signal to decode.
 *
 * @return Decoded signal.
 */
double sr439_obj_extended_info_fr_obj_id_decode(uint8_t value);

/**
 * Check that given signal is in allowed range.
 *
 * @param[in] value Signal to check.
 *
 * @return true if in range, false otherwise.
 */
bool sr439_obj_extended_info_fr_obj_id_is_in_range(uint8_t value);

/**
 * Encode given signal by applying scaling and offset.
 *
 * @param[in] value Signal to encode.
 *
 * @return Encoded signal.
 */
uint16_t sr439_obj_extended_info_fr_obj_arel_lon_encode(double value);

/**
 * Decode given signal by applying scaling and offset.
 *
 * @param[in] value Signal to decode.
 *
 * @return Decoded signal.
 */
double sr439_obj_extended_info_fr_obj_arel_lon_decode(uint16_t value);

/**
 * Check that given signal is in allowed range.
 *
 * @param[in] value Signal to check.
 *
 * @return true if in range, false otherwise.
 */
bool sr439_obj_extended_info_fr_obj_arel_lon_is_in_range(uint16_t value);

/**
 * Encode given signal by applying scaling and offset.
 *
 * @param[in] value Signal to encode.
 *
 * @return Encoded signal.
 */
uint16_t sr439_obj_extended_info_fr_obj_arel_lat_encode(double value);

/**
 * Decode given signal by applying scaling and offset.
 *
 * @param[in] value Signal to decode.
 *
 * @return Decoded signal.
 */
double sr439_obj_extended_info_fr_obj_arel_lat_decode(uint16_t value);

/**
 * Check that given signal is in allowed range.
 *
 * @param[in] value Signal to check.
 *
 * @return true if in range, false otherwise.
 */
bool sr439_obj_extended_info_fr_obj_arel_lat_is_in_range(uint16_t value);

/**
 * Encode given signal by applying scaling and offset.
 *
 * @param[in] value Signal to encode.
 *
 * @return Encoded signal.
 */
uint8_t sr439_obj_extended_info_fr_obj_class_encode(double value);

/**
 * Decode given signal by applying scaling and offset.
 *
 * @param[in] value Signal to decode.
 *
 * @return Decoded signal.
 */
double sr439_obj_extended_info_fr_obj_class_decode(uint8_t value);

/**
 * Check that given signal is in allowed range.
 *
 * @param[in] value Signal to check.
 *
 * @return true if in range, false otherwise.
 */
bool sr439_obj_extended_info_fr_obj_class_is_in_range(uint8_t value);

/**
 * Encode given signal by applying scaling and offset.
 *
 * @param[in] value Signal to encode.
 *
 * @return Encoded signal.
 */
uint16_t sr439_obj_extended_info_fr_obj_orien_angle_encode(double value);

/**
 * Decode given signal by applying scaling and offset.
 *
 * @param[in] value Signal to decode.
 *
 * @return Decoded signal.
 */
double sr439_obj_extended_info_fr_obj_orien_angle_decode(uint16_t value);

/**
 * Check that given signal is in allowed range.
 *
 * @param[in] value Signal to check.
 *
 * @return true if in range, false otherwise.
 */
bool sr439_obj_extended_info_fr_obj_orien_angle_is_in_range(uint16_t value);

/**
 * Encode given signal by applying scaling and offset.
 *
 * @param[in] value Signal to encode.
 *
 * @return Encoded signal.
 */
uint8_t sr439_obj_extended_info_fr_obj_width_encode(double value);

/**
 * Decode given signal by applying scaling and offset.
 *
 * @param[in] value Signal to decode.
 *
 * @return Decoded signal.
 */
double sr439_obj_extended_info_fr_obj_width_decode(uint8_t value);

/**
 * Check that given signal is in allowed range.
 *
 * @param[in] value Signal to check.
 *
 * @return true if in range, false otherwise.
 */
bool sr439_obj_extended_info_fr_obj_width_is_in_range(uint8_t value);

/**
 * Encode given signal by applying scaling and offset.
 *
 * @param[in] value Signal to encode.
 *
 * @return Encoded signal.
 */
uint8_t sr439_obj_extended_info_fr_obj_length_encode(double value);

/**
 * Decode given signal by applying scaling and offset.
 *
 * @param[in] value Signal to decode.
 *
 * @return Decoded signal.
 */
double sr439_obj_extended_info_fr_obj_length_decode(uint8_t value);

/**
 * Check that given signal is in allowed range.
 *
 * @param[in] value Signal to check.
 *
 * @return true if in range, false otherwise.
 */
bool sr439_obj_extended_info_fr_obj_length_is_in_range(uint8_t value);

/**
 * Encode given signal by applying scaling and offset.
 *
 * @param[in] value Signal to encode.
 *
 * @return Encoded signal.
 */
uint8_t sr439_obj_extended_info_fr_obj_height_encode(double value);

/**
 * Decode given signal by applying scaling and offset.
 *
 * @param[in] value Signal to decode.
 *
 * @return Decoded signal.
 */
double sr439_obj_extended_info_fr_obj_height_decode(uint8_t value);

/**
 * Check that given signal is in allowed range.
 *
 * @param[in] value Signal to check.
 *
 * @return true if in range, false otherwise.
 */
bool sr439_obj_extended_info_fr_obj_height_is_in_range(uint8_t value);

/**
 * Pack message Obj_Extended_Info_FL.
 *
 * @param[out] dst_p Buffer to pack the message into.
 * @param[in] src_p Data to pack.
 * @param[in] size Size of dst_p.
 *
 * @return Size of packed data, or negative error code.
 */
int sr439_obj_extended_info_fl_pack(
    uint8_t *dst_p,
    const struct sr439_obj_extended_info_fl_t *src_p,
    size_t size);

/**
 * Unpack message Obj_Extended_Info_FL.
 *
 * @param[out] dst_p Object to unpack the message into.
 * @param[in] src_p Message to unpack.
 * @param[in] size Size of src_p.
 *
 * @return zero(0) or negative error code.
 */
int sr439_obj_extended_info_fl_unpack(
    struct sr439_obj_extended_info_fl_t *dst_p,
    const uint8_t *src_p,
    size_t size);

/**
 * Init message fields to default values from Obj_Extended_Info_FL.
 *
 * @param[in] msg_p Message to init.
 *
 * @return zero(0) on success or (-1) in case of nullptr argument.
 */
int sr439_obj_extended_info_fl_init(struct sr439_obj_extended_info_fl_t *msg_p);

/**
 * Encode given signal by applying scaling and offset.
 *
 * @param[in] value Signal to encode.
 *
 * @return Encoded signal.
 */
uint8_t sr439_obj_extended_info_fl_obj_id_encode(double value);

/**
 * Decode given signal by applying scaling and offset.
 *
 * @param[in] value Signal to decode.
 *
 * @return Decoded signal.
 */
double sr439_obj_extended_info_fl_obj_id_decode(uint8_t value);

/**
 * Check that given signal is in allowed range.
 *
 * @param[in] value Signal to check.
 *
 * @return true if in range, false otherwise.
 */
bool sr439_obj_extended_info_fl_obj_id_is_in_range(uint8_t value);

/**
 * Encode given signal by applying scaling and offset.
 *
 * @param[in] value Signal to encode.
 *
 * @return Encoded signal.
 */
uint16_t sr439_obj_extended_info_fl_obj_arel_lon_encode(double value);

/**
 * Decode given signal by applying scaling and offset.
 *
 * @param[in] value Signal to decode.
 *
 * @return Decoded signal.
 */
double sr439_obj_extended_info_fl_obj_arel_lon_decode(uint16_t value);

/**
 * Check that given signal is in allowed range.
 *
 * @param[in] value Signal to check.
 *
 * @return true if in range, false otherwise.
 */
bool sr439_obj_extended_info_fl_obj_arel_lon_is_in_range(uint16_t value);

/**
 * Encode given signal by applying scaling and offset.
 *
 * @param[in] value Signal to encode.
 *
 * @return Encoded signal.
 */
uint16_t sr439_obj_extended_info_fl_obj_arel_lat_encode(double value);

/**
 * Decode given signal by applying scaling and offset.
 *
 * @param[in] value Signal to decode.
 *
 * @return Decoded signal.
 */
double sr439_obj_extended_info_fl_obj_arel_lat_decode(uint16_t value);

/**
 * Check that given signal is in allowed range.
 *
 * @param[in] value Signal to check.
 *
 * @return true if in range, false otherwise.
 */
bool sr439_obj_extended_info_fl_obj_arel_lat_is_in_range(uint16_t value);

/**
 * Encode given signal by applying scaling and offset.
 *
 * @param[in] value Signal to encode.
 *
 * @return Encoded signal.
 */
uint8_t sr439_obj_extended_info_fl_obj_class_encode(double value);

/**
 * Decode given signal by applying scaling and offset.
 *
 * @param[in] value Signal to decode.
 *
 * @return Decoded signal.
 */
double sr439_obj_extended_info_fl_obj_class_decode(uint8_t value);

/**
 * Check that given signal is in allowed range.
 *
 * @param[in] value Signal to check.
 *
 * @return true if in range, false otherwise.
 */
bool sr439_obj_extended_info_fl_obj_class_is_in_range(uint8_t value);

/**
 * Encode given signal by applying scaling and offset.
 *
 * @param[in] value Signal to encode.
 *
 * @return Encoded signal.
 */
uint16_t sr439_obj_extended_info_fl_obj_orien_angle_encode(double value);

/**
 * Decode given signal by applying scaling and offset.
 *
 * @param[in] value Signal to decode.
 *
 * @return Decoded signal.
 */
double sr439_obj_extended_info_fl_obj_orien_angle_decode(uint16_t value);

/**
 * Check that given signal is in allowed range.
 *
 * @param[in] value Signal to check.
 *
 * @return true if in range, false otherwise.
 */
bool sr439_obj_extended_info_fl_obj_orien_angle_is_in_range(uint16_t value);

/**
 * Encode given signal by applying scaling and offset.
 *
 * @param[in] value Signal to encode.
 *
 * @return Encoded signal.
 */
uint8_t sr439_obj_extended_info_fl_obj_width_encode(double value);

/**
 * Decode given signal by applying scaling and offset.
 *
 * @param[in] value Signal to decode.
 *
 * @return Decoded signal.
 */
double sr439_obj_extended_info_fl_obj_width_decode(uint8_t value);

/**
 * Check that given signal is in allowed range.
 *
 * @param[in] value Signal to check.
 *
 * @return true if in range, false otherwise.
 */
bool sr439_obj_extended_info_fl_obj_width_is_in_range(uint8_t value);

/**
 * Encode given signal by applying scaling and offset.
 *
 * @param[in] value Signal to encode.
 *
 * @return Encoded signal.
 */
uint8_t sr439_obj_extended_info_fl_obj_length_encode(double value);

/**
 * Decode given signal by applying scaling and offset.
 *
 * @param[in] value Signal to decode.
 *
 * @return Decoded signal.
 */
double sr439_obj_extended_info_fl_obj_length_decode(uint8_t value);

/**
 * Check that given signal is in allowed range.
 *
 * @param[in] value Signal to check.
 *
 * @return true if in range, false otherwise.
 */
bool sr439_obj_extended_info_fl_obj_length_is_in_range(uint8_t value);

/**
 * Encode given signal by applying scaling and offset.
 *
 * @param[in] value Signal to encode.
 *
 * @return Encoded signal.
 */
uint8_t sr439_obj_extended_info_fl_obj_height_encode(double value);

/**
 * Decode given signal by applying scaling and offset.
 *
 * @param[in] value Signal to decode.
 *
 * @return Decoded signal.
 */
double sr439_obj_extended_info_fl_obj_height_decode(uint8_t value);

/**
 * Check that given signal is in allowed range.
 *
 * @param[in] value Signal to check.
 *
 * @return true if in range, false otherwise.
 */
bool sr439_obj_extended_info_fl_obj_height_is_in_range(uint8_t value);

/**
 * Pack message Obj_Collision_Info_RR.
 *
 * @param[out] dst_p Buffer to pack the message into.
 * @param[in] src_p Data to pack.
 * @param[in] size Size of dst_p.
 *
 * @return Size of packed data, or negative error code.
 */
int sr439_obj_collision_info_rr_pack(
    uint8_t *dst_p,
    const struct sr439_obj_collision_info_rr_t *src_p,
    size_t size);

/**
 * Unpack message Obj_Collision_Info_RR.
 *
 * @param[out] dst_p Object to unpack the message into.
 * @param[in] src_p Message to unpack.
 * @param[in] size Size of src_p.
 *
 * @return zero(0) or negative error code.
 */
int sr439_obj_collision_info_rr_unpack(
    struct sr439_obj_collision_info_rr_t *dst_p,
    const uint8_t *src_p,
    size_t size);

/**
 * Init message fields to default values from Obj_Collision_Info_RR.
 *
 * @param[in] msg_p Message to init.
 *
 * @return zero(0) on success or (-1) in case of nullptr argument.
 */
int sr439_obj_collision_info_rr_init(struct sr439_obj_collision_info_rr_t *msg_p);

/**
 * Encode given signal by applying scaling and offset.
 *
 * @param[in] value Signal to encode.
 *
 * @return Encoded signal.
 */
uint8_t sr439_obj_collision_info_rr_obj_id_encode(double value);

/**
 * Decode given signal by applying scaling and offset.
 *
 * @param[in] value Signal to decode.
 *
 * @return Decoded signal.
 */
double sr439_obj_collision_info_rr_obj_id_decode(uint8_t value);

/**
 * Check that given signal is in allowed range.
 *
 * @param[in] value Signal to check.
 *
 * @return true if in range, false otherwise.
 */
bool sr439_obj_collision_info_rr_obj_id_is_in_range(uint8_t value);

/**
 * Encode given signal by applying scaling and offset.
 *
 * @param[in] value Signal to encode.
 *
 * @return Encoded signal.
 */
uint8_t sr439_obj_collision_info_rr_obj_ref_point_encode(double value);

/**
 * Decode given signal by applying scaling and offset.
 *
 * @param[in] value Signal to decode.
 *
 * @return Decoded signal.
 */
double sr439_obj_collision_info_rr_obj_ref_point_decode(uint8_t value);

/**
 * Check that given signal is in allowed range.
 *
 * @param[in] value Signal to check.
 *
 * @return true if in range, false otherwise.
 */
bool sr439_obj_collision_info_rr_obj_ref_point_is_in_range(uint8_t value);

/**
 * Encode given signal by applying scaling and offset.
 *
 * @param[in] value Signal to encode.
 *
 * @return Encoded signal.
 */
uint8_t sr439_obj_collision_info_rr_obj_track_state_encode(double value);

/**
 * Decode given signal by applying scaling and offset.
 *
 * @param[in] value Signal to decode.
 *
 * @return Decoded signal.
 */
double sr439_obj_collision_info_rr_obj_track_state_decode(uint8_t value);

/**
 * Check that given signal is in allowed range.
 *
 * @param[in] value Signal to check.
 *
 * @return true if in range, false otherwise.
 */
bool sr439_obj_collision_info_rr_obj_track_state_is_in_range(uint8_t value);

/**
 * Encode given signal by applying scaling and offset.
 *
 * @param[in] value Signal to encode.
 *
 * @return Encoded signal.
 */
uint8_t sr439_obj_collision_info_rr_obj_corner_rel_wid_encode(double value);

/**
 * Decode given signal by applying scaling and offset.
 *
 * @param[in] value Signal to decode.
 *
 * @return Decoded signal.
 */
double sr439_obj_collision_info_rr_obj_corner_rel_wid_decode(uint8_t value);

/**
 * Check that given signal is in allowed range.
 *
 * @param[in] value Signal to check.
 *
 * @return true if in range, false otherwise.
 */
bool sr439_obj_collision_info_rr_obj_corner_rel_wid_is_in_range(uint8_t value);

/**
 * Encode given signal by applying scaling and offset.
 *
 * @param[in] value Signal to encode.
 *
 * @return Encoded signal.
 */
uint8_t sr439_obj_collision_info_rr_obj_corner_rel_len_encode(double value);

/**
 * Decode given signal by applying scaling and offset.
 *
 * @param[in] value Signal to decode.
 *
 * @return Decoded signal.
 */
double sr439_obj_collision_info_rr_obj_corner_rel_len_decode(uint8_t value);

/**
 * Check that given signal is in allowed range.
 *
 * @param[in] value Signal to check.
 *
 * @return true if in range, false otherwise.
 */
bool sr439_obj_collision_info_rr_obj_corner_rel_len_is_in_range(uint8_t value);

/**
 * Encode given signal by applying scaling and offset.
 *
 * @param[in] value Signal to encode.
 *
 * @return Encoded signal.
 */
uint16_t sr439_obj_collision_info_rr_obj_yaw_rate_encode(double value);

/**
 * Decode given signal by applying scaling and offset.
 *
 * @param[in] value Signal to decode.
 *
 * @return Decoded signal.
 */
double sr439_obj_collision_info_rr_obj_yaw_rate_decode(uint16_t value);

/**
 * Check that given signal is in allowed range.
 *
 * @param[in] value Signal to check.
 *
 * @return true if in range, false otherwise.
 */
bool sr439_obj_collision_info_rr_obj_yaw_rate_is_in_range(uint16_t value);

/**
 * Pack message Obj_Collision_Info_FR.
 *
 * @param[out] dst_p Buffer to pack the message into.
 * @param[in] src_p Data to pack.
 * @param[in] size Size of dst_p.
 *
 * @return Size of packed data, or negative error code.
 */
int sr439_obj_collision_info_fr_pack(
    uint8_t *dst_p,
    const struct sr439_obj_collision_info_fr_t *src_p,
    size_t size);

/**
 * Unpack message Obj_Collision_Info_FR.
 *
 * @param[out] dst_p Object to unpack the message into.
 * @param[in] src_p Message to unpack.
 * @param[in] size Size of src_p.
 *
 * @return zero(0) or negative error code.
 */
int sr439_obj_collision_info_fr_unpack(
    struct sr439_obj_collision_info_fr_t *dst_p,
    const uint8_t *src_p,
    size_t size);

/**
 * Init message fields to default values from Obj_Collision_Info_FR.
 *
 * @param[in] msg_p Message to init.
 *
 * @return zero(0) on success or (-1) in case of nullptr argument.
 */
int sr439_obj_collision_info_fr_init(struct sr439_obj_collision_info_fr_t *msg_p);

/**
 * Encode given signal by applying scaling and offset.
 *
 * @param[in] value Signal to encode.
 *
 * @return Encoded signal.
 */
uint8_t sr439_obj_collision_info_fr_obj_id_encode(double value);

/**
 * Decode given signal by applying scaling and offset.
 *
 * @param[in] value Signal to decode.
 *
 * @return Decoded signal.
 */
double sr439_obj_collision_info_fr_obj_id_decode(uint8_t value);

/**
 * Check that given signal is in allowed range.
 *
 * @param[in] value Signal to check.
 *
 * @return true if in range, false otherwise.
 */
bool sr439_obj_collision_info_fr_obj_id_is_in_range(uint8_t value);

/**
 * Encode given signal by applying scaling and offset.
 *
 * @param[in] value Signal to encode.
 *
 * @return Encoded signal.
 */
uint8_t sr439_obj_collision_info_fr_obj_ref_point_encode(double value);

/**
 * Decode given signal by applying scaling and offset.
 *
 * @param[in] value Signal to decode.
 *
 * @return Decoded signal.
 */
double sr439_obj_collision_info_fr_obj_ref_point_decode(uint8_t value);

/**
 * Check that given signal is in allowed range.
 *
 * @param[in] value Signal to check.
 *
 * @return true if in range, false otherwise.
 */
bool sr439_obj_collision_info_fr_obj_ref_point_is_in_range(uint8_t value);

/**
 * Encode given signal by applying scaling and offset.
 *
 * @param[in] value Signal to encode.
 *
 * @return Encoded signal.
 */
uint8_t sr439_obj_collision_info_fr_obj_track_state_encode(double value);

/**
 * Decode given signal by applying scaling and offset.
 *
 * @param[in] value Signal to decode.
 *
 * @return Decoded signal.
 */
double sr439_obj_collision_info_fr_obj_track_state_decode(uint8_t value);

/**
 * Check that given signal is in allowed range.
 *
 * @param[in] value Signal to check.
 *
 * @return true if in range, false otherwise.
 */
bool sr439_obj_collision_info_fr_obj_track_state_is_in_range(uint8_t value);

/**
 * Encode given signal by applying scaling and offset.
 *
 * @param[in] value Signal to encode.
 *
 * @return Encoded signal.
 */
uint8_t sr439_obj_collision_info_fr_obj_corner_rel_wid_encode(double value);

/**
 * Decode given signal by applying scaling and offset.
 *
 * @param[in] value Signal to decode.
 *
 * @return Decoded signal.
 */
double sr439_obj_collision_info_fr_obj_corner_rel_wid_decode(uint8_t value);

/**
 * Check that given signal is in allowed range.
 *
 * @param[in] value Signal to check.
 *
 * @return true if in range, false otherwise.
 */
bool sr439_obj_collision_info_fr_obj_corner_rel_wid_is_in_range(uint8_t value);

/**
 * Encode given signal by applying scaling and offset.
 *
 * @param[in] value Signal to encode.
 *
 * @return Encoded signal.
 */
uint8_t sr439_obj_collision_info_fr_obj_corner_rel_len_encode(double value);

/**
 * Decode given signal by applying scaling and offset.
 *
 * @param[in] value Signal to decode.
 *
 * @return Decoded signal.
 */
double sr439_obj_collision_info_fr_obj_corner_rel_len_decode(uint8_t value);

/**
 * Check that given signal is in allowed range.
 *
 * @param[in] value Signal to check.
 *
 * @return true if in range, false otherwise.
 */
bool sr439_obj_collision_info_fr_obj_corner_rel_len_is_in_range(uint8_t value);

/**
 * Encode given signal by applying scaling and offset.
 *
 * @param[in] value Signal to encode.
 *
 * @return Encoded signal.
 */
uint16_t sr439_obj_collision_info_fr_obj_yaw_rate_encode(double value);

/**
 * Decode given signal by applying scaling and offset.
 *
 * @param[in] value Signal to decode.
 *
 * @return Decoded signal.
 */
double sr439_obj_collision_info_fr_obj_yaw_rate_decode(uint16_t value);

/**
 * Check that given signal is in allowed range.
 *
 * @param[in] value Signal to check.
 *
 * @return true if in range, false otherwise.
 */
bool sr439_obj_collision_info_fr_obj_yaw_rate_is_in_range(uint16_t value);

/**
 * Pack message Obj_Collision_Info_FL.
 *
 * @param[out] dst_p Buffer to pack the message into.
 * @param[in] src_p Data to pack.
 * @param[in] size Size of dst_p.
 *
 * @return Size of packed data, or negative error code.
 */
int sr439_obj_collision_info_fl_pack(
    uint8_t *dst_p,
    const struct sr439_obj_collision_info_fl_t *src_p,
    size_t size);

/**
 * Unpack message Obj_Collision_Info_FL.
 *
 * @param[out] dst_p Object to unpack the message into.
 * @param[in] src_p Message to unpack.
 * @param[in] size Size of src_p.
 *
 * @return zero(0) or negative error code.
 */
int sr439_obj_collision_info_fl_unpack(
    struct sr439_obj_collision_info_fl_t *dst_p,
    const uint8_t *src_p,
    size_t size);

/**
 * Init message fields to default values from Obj_Collision_Info_FL.
 *
 * @param[in] msg_p Message to init.
 *
 * @return zero(0) on success or (-1) in case of nullptr argument.
 */
int sr439_obj_collision_info_fl_init(struct sr439_obj_collision_info_fl_t *msg_p);

/**
 * Encode given signal by applying scaling and offset.
 *
 * @param[in] value Signal to encode.
 *
 * @return Encoded signal.
 */
uint8_t sr439_obj_collision_info_fl_obj_id_encode(double value);

/**
 * Decode given signal by applying scaling and offset.
 *
 * @param[in] value Signal to decode.
 *
 * @return Decoded signal.
 */
double sr439_obj_collision_info_fl_obj_id_decode(uint8_t value);

/**
 * Check that given signal is in allowed range.
 *
 * @param[in] value Signal to check.
 *
 * @return true if in range, false otherwise.
 */
bool sr439_obj_collision_info_fl_obj_id_is_in_range(uint8_t value);

/**
 * Encode given signal by applying scaling and offset.
 *
 * @param[in] value Signal to encode.
 *
 * @return Encoded signal.
 */
uint8_t sr439_obj_collision_info_fl_obj_ref_point_encode(double value);

/**
 * Decode given signal by applying scaling and offset.
 *
 * @param[in] value Signal to decode.
 *
 * @return Decoded signal.
 */
double sr439_obj_collision_info_fl_obj_ref_point_decode(uint8_t value);

/**
 * Check that given signal is in allowed range.
 *
 * @param[in] value Signal to check.
 *
 * @return true if in range, false otherwise.
 */
bool sr439_obj_collision_info_fl_obj_ref_point_is_in_range(uint8_t value);

/**
 * Encode given signal by applying scaling and offset.
 *
 * @param[in] value Signal to encode.
 *
 * @return Encoded signal.
 */
uint8_t sr439_obj_collision_info_fl_obj_track_state_encode(double value);

/**
 * Decode given signal by applying scaling and offset.
 *
 * @param[in] value Signal to decode.
 *
 * @return Decoded signal.
 */
double sr439_obj_collision_info_fl_obj_track_state_decode(uint8_t value);

/**
 * Check that given signal is in allowed range.
 *
 * @param[in] value Signal to check.
 *
 * @return true if in range, false otherwise.
 */
bool sr439_obj_collision_info_fl_obj_track_state_is_in_range(uint8_t value);

/**
 * Encode given signal by applying scaling and offset.
 *
 * @param[in] value Signal to encode.
 *
 * @return Encoded signal.
 */
uint8_t sr439_obj_collision_info_fl_obj_corner_rel_wid_encode(double value);

/**
 * Decode given signal by applying scaling and offset.
 *
 * @param[in] value Signal to decode.
 *
 * @return Decoded signal.
 */
double sr439_obj_collision_info_fl_obj_corner_rel_wid_decode(uint8_t value);

/**
 * Check that given signal is in allowed range.
 *
 * @param[in] value Signal to check.
 *
 * @return true if in range, false otherwise.
 */
bool sr439_obj_collision_info_fl_obj_corner_rel_wid_is_in_range(uint8_t value);

/**
 * Encode given signal by applying scaling and offset.
 *
 * @param[in] value Signal to encode.
 *
 * @return Encoded signal.
 */
uint8_t sr439_obj_collision_info_fl_obj_corner_rel_len_encode(double value);

/**
 * Decode given signal by applying scaling and offset.
 *
 * @param[in] value Signal to decode.
 *
 * @return Decoded signal.
 */
double sr439_obj_collision_info_fl_obj_corner_rel_len_decode(uint8_t value);

/**
 * Check that given signal is in allowed range.
 *
 * @param[in] value Signal to check.
 *
 * @return true if in range, false otherwise.
 */
bool sr439_obj_collision_info_fl_obj_corner_rel_len_is_in_range(uint8_t value);

/**
 * Encode given signal by applying scaling and offset.
 *
 * @param[in] value Signal to encode.
 *
 * @return Encoded signal.
 */
uint16_t sr439_obj_collision_info_fl_obj_yaw_rate_encode(double value);

/**
 * Decode given signal by applying scaling and offset.
 *
 * @param[in] value Signal to decode.
 *
 * @return Decoded signal.
 */
double sr439_obj_collision_info_fl_obj_yaw_rate_decode(uint16_t value);

/**
 * Check that given signal is in allowed range.
 *
 * @param[in] value Signal to check.
 *
 * @return true if in range, false otherwise.
 */
bool sr439_obj_collision_info_fl_obj_yaw_rate_is_in_range(uint16_t value);

/**
 * Pack message Obj_0_Status_RR.
 *
 * @param[out] dst_p Buffer to pack the message into.
 * @param[in] src_p Data to pack.
 * @param[in] size Size of dst_p.
 *
 * @return Size of packed data, or negative error code.
 */
int sr439_obj_0_status_rr_pack(
    uint8_t *dst_p,
    const struct sr439_obj_0_status_rr_t *src_p,
    size_t size);

/**
 * Unpack message Obj_0_Status_RR.
 *
 * @param[out] dst_p Object to unpack the message into.
 * @param[in] src_p Message to unpack.
 * @param[in] size Size of src_p.
 *
 * @return zero(0) or negative error code.
 */
int sr439_obj_0_status_rr_unpack(
    struct sr439_obj_0_status_rr_t *dst_p,
    const uint8_t *src_p,
    size_t size);

/**
 * Init message fields to default values from Obj_0_Status_RR.
 *
 * @param[in] msg_p Message to init.
 *
 * @return zero(0) on success or (-1) in case of nullptr argument.
 */
int sr439_obj_0_status_rr_init(struct sr439_obj_0_status_rr_t *msg_p);

/**
 * Encode given signal by applying scaling and offset.
 *
 * @param[in] value Signal to encode.
 *
 * @return Encoded signal.
 */
uint8_t sr439_obj_0_status_rr_obj_nof_object_encode(double value);

/**
 * Decode given signal by applying scaling and offset.
 *
 * @param[in] value Signal to decode.
 *
 * @return Decoded signal.
 */
double sr439_obj_0_status_rr_obj_nof_object_decode(uint8_t value);

/**
 * Check that given signal is in allowed range.
 *
 * @param[in] value Signal to check.
 *
 * @return true if in range, false otherwise.
 */
bool sr439_obj_0_status_rr_obj_nof_object_is_in_range(uint8_t value);

/**
 * Encode given signal by applying scaling and offset.
 *
 * @param[in] value Signal to encode.
 *
 * @return Encoded signal.
 */
uint16_t sr439_obj_0_status_rr_obj_meas_counter_encode(double value);

/**
 * Decode given signal by applying scaling and offset.
 *
 * @param[in] value Signal to decode.
 *
 * @return Decoded signal.
 */
double sr439_obj_0_status_rr_obj_meas_counter_decode(uint16_t value);

/**
 * Check that given signal is in allowed range.
 *
 * @param[in] value Signal to check.
 *
 * @return true if in range, false otherwise.
 */
bool sr439_obj_0_status_rr_obj_meas_counter_is_in_range(uint16_t value);

/**
 * Encode given signal by applying scaling and offset.
 *
 * @param[in] value Signal to encode.
 *
 * @return Encoded signal.
 */
uint8_t sr439_obj_0_status_rr_obj_interface_version_encode(double value);

/**
 * Decode given signal by applying scaling and offset.
 *
 * @param[in] value Signal to decode.
 *
 * @return Decoded signal.
 */
double sr439_obj_0_status_rr_obj_interface_version_decode(uint8_t value);

/**
 * Check that given signal is in allowed range.
 *
 * @param[in] value Signal to check.
 *
 * @return true if in range, false otherwise.
 */
bool sr439_obj_0_status_rr_obj_interface_version_is_in_range(uint8_t value);

/**
 * Encode given signal by applying scaling and offset.
 *
 * @param[in] value Signal to encode.
 *
 * @return Encoded signal.
 */
uint8_t sr439_obj_0_status_rr_obj_bsd_warning_encode(double value);

/**
 * Decode given signal by applying scaling and offset.
 *
 * @param[in] value Signal to decode.
 *
 * @return Decoded signal.
 */
double sr439_obj_0_status_rr_obj_bsd_warning_decode(uint8_t value);

/**
 * Check that given signal is in allowed range.
 *
 * @param[in] value Signal to check.
 *
 * @return true if in range, false otherwise.
 */
bool sr439_obj_0_status_rr_obj_bsd_warning_is_in_range(uint8_t value);

/**
 * Encode given signal by applying scaling and offset.
 *
 * @param[in] value Signal to encode.
 *
 * @return Encoded signal.
 */
uint8_t sr439_obj_0_status_rr_obj_lca_warning_encode(double value);

/**
 * Decode given signal by applying scaling and offset.
 *
 * @param[in] value Signal to decode.
 *
 * @return Decoded signal.
 */
double sr439_obj_0_status_rr_obj_lca_warning_decode(uint8_t value);

/**
 * Check that given signal is in allowed range.
 *
 * @param[in] value Signal to check.
 *
 * @return true if in range, false otherwise.
 */
bool sr439_obj_0_status_rr_obj_lca_warning_is_in_range(uint8_t value);

/**
 * Encode given signal by applying scaling and offset.
 *
 * @param[in] value Signal to encode.
 *
 * @return Encoded signal.
 */
uint8_t sr439_obj_0_status_rr_obj_dow_warning_encode(double value);

/**
 * Decode given signal by applying scaling and offset.
 *
 * @param[in] value Signal to decode.
 *
 * @return Decoded signal.
 */
double sr439_obj_0_status_rr_obj_dow_warning_decode(uint8_t value);

/**
 * Check that given signal is in allowed range.
 *
 * @param[in] value Signal to check.
 *
 * @return true if in range, false otherwise.
 */
bool sr439_obj_0_status_rr_obj_dow_warning_is_in_range(uint8_t value);

/**
 * Encode given signal by applying scaling and offset.
 *
 * @param[in] value Signal to encode.
 *
 * @return Encoded signal.
 */
uint8_t sr439_obj_0_status_rr_obj_rcta_warning_encode(double value);

/**
 * Decode given signal by applying scaling and offset.
 *
 * @param[in] value Signal to decode.
 *
 * @return Decoded signal.
 */
double sr439_obj_0_status_rr_obj_rcta_warning_decode(uint8_t value);

/**
 * Check that given signal is in allowed range.
 *
 * @param[in] value Signal to check.
 *
 * @return true if in range, false otherwise.
 */
bool sr439_obj_0_status_rr_obj_rcta_warning_is_in_range(uint8_t value);

/**
 * Encode given signal by applying scaling and offset.
 *
 * @param[in] value Signal to encode.
 *
 * @return Encoded signal.
 */
uint8_t sr439_obj_0_status_rr_obj_rctb_warning_encode(double value);

/**
 * Decode given signal by applying scaling and offset.
 *
 * @param[in] value Signal to decode.
 *
 * @return Decoded signal.
 */
double sr439_obj_0_status_rr_obj_rctb_warning_decode(uint8_t value);

/**
 * Check that given signal is in allowed range.
 *
 * @param[in] value Signal to check.
 *
 * @return true if in range, false otherwise.
 */
bool sr439_obj_0_status_rr_obj_rctb_warning_is_in_range(uint8_t value);

/**
 * Encode given signal by applying scaling and offset.
 *
 * @param[in] value Signal to encode.
 *
 * @return Encoded signal.
 */
uint8_t sr439_obj_0_status_rr_obj_fcta_warning_encode(double value);

/**
 * Decode given signal by applying scaling and offset.
 *
 * @param[in] value Signal to decode.
 *
 * @return Decoded signal.
 */
double sr439_obj_0_status_rr_obj_fcta_warning_decode(uint8_t value);

/**
 * Check that given signal is in allowed range.
 *
 * @param[in] value Signal to check.
 *
 * @return true if in range, false otherwise.
 */
bool sr439_obj_0_status_rr_obj_fcta_warning_is_in_range(uint8_t value);

/**
 * Encode given signal by applying scaling and offset.
 *
 * @param[in] value Signal to encode.
 *
 * @return Encoded signal.
 */
uint8_t sr439_obj_0_status_rr_obj_fctb_warning_encode(double value);

/**
 * Decode given signal by applying scaling and offset.
 *
 * @param[in] value Signal to decode.
 *
 * @return Decoded signal.
 */
double sr439_obj_0_status_rr_obj_fctb_warning_decode(uint8_t value);

/**
 * Check that given signal is in allowed range.
 *
 * @param[in] value Signal to check.
 *
 * @return true if in range, false otherwise.
 */
bool sr439_obj_0_status_rr_obj_fctb_warning_is_in_range(uint8_t value);

/**
 * Encode given signal by applying scaling and offset.
 *
 * @param[in] value Signal to encode.
 *
 * @return Encoded signal.
 */
uint8_t sr439_obj_0_status_rr_obj_cipvid_encode(double value);

/**
 * Decode given signal by applying scaling and offset.
 *
 * @param[in] value Signal to decode.
 *
 * @return Decoded signal.
 */
double sr439_obj_0_status_rr_obj_cipvid_decode(uint8_t value);

/**
 * Check that given signal is in allowed range.
 *
 * @param[in] value Signal to check.
 *
 * @return true if in range, false otherwise.
 */
bool sr439_obj_0_status_rr_obj_cipvid_is_in_range(uint8_t value);

/**
 * Pack message Obj_0_Status_FR.
 *
 * @param[out] dst_p Buffer to pack the message into.
 * @param[in] src_p Data to pack.
 * @param[in] size Size of dst_p.
 *
 * @return Size of packed data, or negative error code.
 */
int sr439_obj_0_status_fr_pack(
    uint8_t *dst_p,
    const struct sr439_obj_0_status_fr_t *src_p,
    size_t size);

/**
 * Unpack message Obj_0_Status_FR.
 *
 * @param[out] dst_p Object to unpack the message into.
 * @param[in] src_p Message to unpack.
 * @param[in] size Size of src_p.
 *
 * @return zero(0) or negative error code.
 */
int sr439_obj_0_status_fr_unpack(
    struct sr439_obj_0_status_fr_t *dst_p,
    const uint8_t *src_p,
    size_t size);

/**
 * Init message fields to default values from Obj_0_Status_FR.
 *
 * @param[in] msg_p Message to init.
 *
 * @return zero(0) on success or (-1) in case of nullptr argument.
 */
int sr439_obj_0_status_fr_init(struct sr439_obj_0_status_fr_t *msg_p);

/**
 * Encode given signal by applying scaling and offset.
 *
 * @param[in] value Signal to encode.
 *
 * @return Encoded signal.
 */
uint8_t sr439_obj_0_status_fr_obj_nof_object_encode(double value);

/**
 * Decode given signal by applying scaling and offset.
 *
 * @param[in] value Signal to decode.
 *
 * @return Decoded signal.
 */
double sr439_obj_0_status_fr_obj_nof_object_decode(uint8_t value);

/**
 * Check that given signal is in allowed range.
 *
 * @param[in] value Signal to check.
 *
 * @return true if in range, false otherwise.
 */
bool sr439_obj_0_status_fr_obj_nof_object_is_in_range(uint8_t value);

/**
 * Encode given signal by applying scaling and offset.
 *
 * @param[in] value Signal to encode.
 *
 * @return Encoded signal.
 */
uint16_t sr439_obj_0_status_fr_obj_meas_counter_encode(double value);

/**
 * Decode given signal by applying scaling and offset.
 *
 * @param[in] value Signal to decode.
 *
 * @return Decoded signal.
 */
double sr439_obj_0_status_fr_obj_meas_counter_decode(uint16_t value);

/**
 * Check that given signal is in allowed range.
 *
 * @param[in] value Signal to check.
 *
 * @return true if in range, false otherwise.
 */
bool sr439_obj_0_status_fr_obj_meas_counter_is_in_range(uint16_t value);

/**
 * Encode given signal by applying scaling and offset.
 *
 * @param[in] value Signal to encode.
 *
 * @return Encoded signal.
 */
uint8_t sr439_obj_0_status_fr_obj_interface_version_encode(double value);

/**
 * Decode given signal by applying scaling and offset.
 *
 * @param[in] value Signal to decode.
 *
 * @return Decoded signal.
 */
double sr439_obj_0_status_fr_obj_interface_version_decode(uint8_t value);

/**
 * Check that given signal is in allowed range.
 *
 * @param[in] value Signal to check.
 *
 * @return true if in range, false otherwise.
 */
bool sr439_obj_0_status_fr_obj_interface_version_is_in_range(uint8_t value);

/**
 * Encode given signal by applying scaling and offset.
 *
 * @param[in] value Signal to encode.
 *
 * @return Encoded signal.
 */
uint8_t sr439_obj_0_status_fr_obj_bsd_warning_encode(double value);

/**
 * Decode given signal by applying scaling and offset.
 *
 * @param[in] value Signal to decode.
 *
 * @return Decoded signal.
 */
double sr439_obj_0_status_fr_obj_bsd_warning_decode(uint8_t value);

/**
 * Check that given signal is in allowed range.
 *
 * @param[in] value Signal to check.
 *
 * @return true if in range, false otherwise.
 */
bool sr439_obj_0_status_fr_obj_bsd_warning_is_in_range(uint8_t value);

/**
 * Encode given signal by applying scaling and offset.
 *
 * @param[in] value Signal to encode.
 *
 * @return Encoded signal.
 */
uint8_t sr439_obj_0_status_fr_obj_lca_warning_encode(double value);

/**
 * Decode given signal by applying scaling and offset.
 *
 * @param[in] value Signal to decode.
 *
 * @return Decoded signal.
 */
double sr439_obj_0_status_fr_obj_lca_warning_decode(uint8_t value);

/**
 * Check that given signal is in allowed range.
 *
 * @param[in] value Signal to check.
 *
 * @return true if in range, false otherwise.
 */
bool sr439_obj_0_status_fr_obj_lca_warning_is_in_range(uint8_t value);

/**
 * Encode given signal by applying scaling and offset.
 *
 * @param[in] value Signal to encode.
 *
 * @return Encoded signal.
 */
uint8_t sr439_obj_0_status_fr_obj_dow_warning_encode(double value);

/**
 * Decode given signal by applying scaling and offset.
 *
 * @param[in] value Signal to decode.
 *
 * @return Decoded signal.
 */
double sr439_obj_0_status_fr_obj_dow_warning_decode(uint8_t value);

/**
 * Check that given signal is in allowed range.
 *
 * @param[in] value Signal to check.
 *
 * @return true if in range, false otherwise.
 */
bool sr439_obj_0_status_fr_obj_dow_warning_is_in_range(uint8_t value);

/**
 * Encode given signal by applying scaling and offset.
 *
 * @param[in] value Signal to encode.
 *
 * @return Encoded signal.
 */
uint8_t sr439_obj_0_status_fr_obj_rcta_warning_encode(double value);

/**
 * Decode given signal by applying scaling and offset.
 *
 * @param[in] value Signal to decode.
 *
 * @return Decoded signal.
 */
double sr439_obj_0_status_fr_obj_rcta_warning_decode(uint8_t value);

/**
 * Check that given signal is in allowed range.
 *
 * @param[in] value Signal to check.
 *
 * @return true if in range, false otherwise.
 */
bool sr439_obj_0_status_fr_obj_rcta_warning_is_in_range(uint8_t value);

/**
 * Encode given signal by applying scaling and offset.
 *
 * @param[in] value Signal to encode.
 *
 * @return Encoded signal.
 */
uint8_t sr439_obj_0_status_fr_obj_rctb_warning_encode(double value);

/**
 * Decode given signal by applying scaling and offset.
 *
 * @param[in] value Signal to decode.
 *
 * @return Decoded signal.
 */
double sr439_obj_0_status_fr_obj_rctb_warning_decode(uint8_t value);

/**
 * Check that given signal is in allowed range.
 *
 * @param[in] value Signal to check.
 *
 * @return true if in range, false otherwise.
 */
bool sr439_obj_0_status_fr_obj_rctb_warning_is_in_range(uint8_t value);

/**
 * Encode given signal by applying scaling and offset.
 *
 * @param[in] value Signal to encode.
 *
 * @return Encoded signal.
 */
uint8_t sr439_obj_0_status_fr_obj_fcta_warning_encode(double value);

/**
 * Decode given signal by applying scaling and offset.
 *
 * @param[in] value Signal to decode.
 *
 * @return Decoded signal.
 */
double sr439_obj_0_status_fr_obj_fcta_warning_decode(uint8_t value);

/**
 * Check that given signal is in allowed range.
 *
 * @param[in] value Signal to check.
 *
 * @return true if in range, false otherwise.
 */
bool sr439_obj_0_status_fr_obj_fcta_warning_is_in_range(uint8_t value);

/**
 * Encode given signal by applying scaling and offset.
 *
 * @param[in] value Signal to encode.
 *
 * @return Encoded signal.
 */
uint8_t sr439_obj_0_status_fr_obj_fctb_warning_encode(double value);

/**
 * Decode given signal by applying scaling and offset.
 *
 * @param[in] value Signal to decode.
 *
 * @return Decoded signal.
 */
double sr439_obj_0_status_fr_obj_fctb_warning_decode(uint8_t value);

/**
 * Check that given signal is in allowed range.
 *
 * @param[in] value Signal to check.
 *
 * @return true if in range, false otherwise.
 */
bool sr439_obj_0_status_fr_obj_fctb_warning_is_in_range(uint8_t value);

/**
 * Encode given signal by applying scaling and offset.
 *
 * @param[in] value Signal to encode.
 *
 * @return Encoded signal.
 */
uint8_t sr439_obj_0_status_fr_obj_cipvid_encode(double value);

/**
 * Decode given signal by applying scaling and offset.
 *
 * @param[in] value Signal to decode.
 *
 * @return Decoded signal.
 */
double sr439_obj_0_status_fr_obj_cipvid_decode(uint8_t value);

/**
 * Check that given signal is in allowed range.
 *
 * @param[in] value Signal to check.
 *
 * @return true if in range, false otherwise.
 */
bool sr439_obj_0_status_fr_obj_cipvid_is_in_range(uint8_t value);

/**
 * Pack message Obj_0_Status_FL.
 *
 * @param[out] dst_p Buffer to pack the message into.
 * @param[in] src_p Data to pack.
 * @param[in] size Size of dst_p.
 *
 * @return Size of packed data, or negative error code.
 */
int sr439_obj_0_status_fl_pack(
    uint8_t *dst_p,
    const struct sr439_obj_0_status_fl_t *src_p,
    size_t size);

/**
 * Unpack message Obj_0_Status_FL.
 *
 * @param[out] dst_p Object to unpack the message into.
 * @param[in] src_p Message to unpack.
 * @param[in] size Size of src_p.
 *
 * @return zero(0) or negative error code.
 */
int sr439_obj_0_status_fl_unpack(
    struct sr439_obj_0_status_fl_t *dst_p,
    const uint8_t *src_p,
    size_t size);

/**
 * Init message fields to default values from Obj_0_Status_FL.
 *
 * @param[in] msg_p Message to init.
 *
 * @return zero(0) on success or (-1) in case of nullptr argument.
 */
int sr439_obj_0_status_fl_init(struct sr439_obj_0_status_fl_t *msg_p);

/**
 * Encode given signal by applying scaling and offset.
 *
 * @param[in] value Signal to encode.
 *
 * @return Encoded signal.
 */
uint8_t sr439_obj_0_status_fl_obj_nof_object_encode(double value);

/**
 * Decode given signal by applying scaling and offset.
 *
 * @param[in] value Signal to decode.
 *
 * @return Decoded signal.
 */
double sr439_obj_0_status_fl_obj_nof_object_decode(uint8_t value);

/**
 * Check that given signal is in allowed range.
 *
 * @param[in] value Signal to check.
 *
 * @return true if in range, false otherwise.
 */
bool sr439_obj_0_status_fl_obj_nof_object_is_in_range(uint8_t value);

/**
 * Encode given signal by applying scaling and offset.
 *
 * @param[in] value Signal to encode.
 *
 * @return Encoded signal.
 */
uint16_t sr439_obj_0_status_fl_obj_meas_counter_encode(double value);

/**
 * Decode given signal by applying scaling and offset.
 *
 * @param[in] value Signal to decode.
 *
 * @return Decoded signal.
 */
double sr439_obj_0_status_fl_obj_meas_counter_decode(uint16_t value);

/**
 * Check that given signal is in allowed range.
 *
 * @param[in] value Signal to check.
 *
 * @return true if in range, false otherwise.
 */
bool sr439_obj_0_status_fl_obj_meas_counter_is_in_range(uint16_t value);

/**
 * Encode given signal by applying scaling and offset.
 *
 * @param[in] value Signal to encode.
 *
 * @return Encoded signal.
 */
uint8_t sr439_obj_0_status_fl_obj_interface_version_encode(double value);

/**
 * Decode given signal by applying scaling and offset.
 *
 * @param[in] value Signal to decode.
 *
 * @return Decoded signal.
 */
double sr439_obj_0_status_fl_obj_interface_version_decode(uint8_t value);

/**
 * Check that given signal is in allowed range.
 *
 * @param[in] value Signal to check.
 *
 * @return true if in range, false otherwise.
 */
bool sr439_obj_0_status_fl_obj_interface_version_is_in_range(uint8_t value);

/**
 * Encode given signal by applying scaling and offset.
 *
 * @param[in] value Signal to encode.
 *
 * @return Encoded signal.
 */
uint8_t sr439_obj_0_status_fl_obj_bsd_warning_encode(double value);

/**
 * Decode given signal by applying scaling and offset.
 *
 * @param[in] value Signal to decode.
 *
 * @return Decoded signal.
 */
double sr439_obj_0_status_fl_obj_bsd_warning_decode(uint8_t value);

/**
 * Check that given signal is in allowed range.
 *
 * @param[in] value Signal to check.
 *
 * @return true if in range, false otherwise.
 */
bool sr439_obj_0_status_fl_obj_bsd_warning_is_in_range(uint8_t value);

/**
 * Encode given signal by applying scaling and offset.
 *
 * @param[in] value Signal to encode.
 *
 * @return Encoded signal.
 */
uint8_t sr439_obj_0_status_fl_obj_lca_warning_encode(double value);

/**
 * Decode given signal by applying scaling and offset.
 *
 * @param[in] value Signal to decode.
 *
 * @return Decoded signal.
 */
double sr439_obj_0_status_fl_obj_lca_warning_decode(uint8_t value);

/**
 * Check that given signal is in allowed range.
 *
 * @param[in] value Signal to check.
 *
 * @return true if in range, false otherwise.
 */
bool sr439_obj_0_status_fl_obj_lca_warning_is_in_range(uint8_t value);

/**
 * Encode given signal by applying scaling and offset.
 *
 * @param[in] value Signal to encode.
 *
 * @return Encoded signal.
 */
uint8_t sr439_obj_0_status_fl_obj_dow_warning_encode(double value);

/**
 * Decode given signal by applying scaling and offset.
 *
 * @param[in] value Signal to decode.
 *
 * @return Decoded signal.
 */
double sr439_obj_0_status_fl_obj_dow_warning_decode(uint8_t value);

/**
 * Check that given signal is in allowed range.
 *
 * @param[in] value Signal to check.
 *
 * @return true if in range, false otherwise.
 */
bool sr439_obj_0_status_fl_obj_dow_warning_is_in_range(uint8_t value);

/**
 * Encode given signal by applying scaling and offset.
 *
 * @param[in] value Signal to encode.
 *
 * @return Encoded signal.
 */
uint8_t sr439_obj_0_status_fl_obj_rcta_warning_encode(double value);

/**
 * Decode given signal by applying scaling and offset.
 *
 * @param[in] value Signal to decode.
 *
 * @return Decoded signal.
 */
double sr439_obj_0_status_fl_obj_rcta_warning_decode(uint8_t value);

/**
 * Check that given signal is in allowed range.
 *
 * @param[in] value Signal to check.
 *
 * @return true if in range, false otherwise.
 */
bool sr439_obj_0_status_fl_obj_rcta_warning_is_in_range(uint8_t value);

/**
 * Encode given signal by applying scaling and offset.
 *
 * @param[in] value Signal to encode.
 *
 * @return Encoded signal.
 */
uint8_t sr439_obj_0_status_fl_obj_rctb_warning_encode(double value);

/**
 * Decode given signal by applying scaling and offset.
 *
 * @param[in] value Signal to decode.
 *
 * @return Decoded signal.
 */
double sr439_obj_0_status_fl_obj_rctb_warning_decode(uint8_t value);

/**
 * Check that given signal is in allowed range.
 *
 * @param[in] value Signal to check.
 *
 * @return true if in range, false otherwise.
 */
bool sr439_obj_0_status_fl_obj_rctb_warning_is_in_range(uint8_t value);

/**
 * Encode given signal by applying scaling and offset.
 *
 * @param[in] value Signal to encode.
 *
 * @return Encoded signal.
 */
uint8_t sr439_obj_0_status_fl_obj_fcta_warning_encode(double value);

/**
 * Decode given signal by applying scaling and offset.
 *
 * @param[in] value Signal to decode.
 *
 * @return Decoded signal.
 */
double sr439_obj_0_status_fl_obj_fcta_warning_decode(uint8_t value);

/**
 * Check that given signal is in allowed range.
 *
 * @param[in] value Signal to check.
 *
 * @return true if in range, false otherwise.
 */
bool sr439_obj_0_status_fl_obj_fcta_warning_is_in_range(uint8_t value);

/**
 * Encode given signal by applying scaling and offset.
 *
 * @param[in] value Signal to encode.
 *
 * @return Encoded signal.
 */
uint8_t sr439_obj_0_status_fl_obj_fctb_warning_encode(double value);

/**
 * Decode given signal by applying scaling and offset.
 *
 * @param[in] value Signal to decode.
 *
 * @return Decoded signal.
 */
double sr439_obj_0_status_fl_obj_fctb_warning_decode(uint8_t value);

/**
 * Check that given signal is in allowed range.
 *
 * @param[in] value Signal to check.
 *
 * @return true if in range, false otherwise.
 */
bool sr439_obj_0_status_fl_obj_fctb_warning_is_in_range(uint8_t value);

/**
 * Encode given signal by applying scaling and offset.
 *
 * @param[in] value Signal to encode.
 *
 * @return Encoded signal.
 */
uint8_t sr439_obj_0_status_fl_obj_cipvid_encode(double value);

/**
 * Decode given signal by applying scaling and offset.
 *
 * @param[in] value Signal to decode.
 *
 * @return Decoded signal.
 */
double sr439_obj_0_status_fl_obj_cipvid_decode(uint8_t value);

/**
 * Check that given signal is in allowed range.
 *
 * @param[in] value Signal to check.
 *
 * @return true if in range, false otherwise.
 */
bool sr439_obj_0_status_fl_obj_cipvid_is_in_range(uint8_t value);

/**
 * Pack message Cluster_Header_RR.
 *
 * @param[out] dst_p Buffer to pack the message into.
 * @param[in] src_p Data to pack.
 * @param[in] size Size of dst_p.
 *
 * @return Size of packed data, or negative error code.
 */
int sr439_cluster_header_rr_pack(
    uint8_t *dst_p,
    const struct sr439_cluster_header_rr_t *src_p,
    size_t size);

/**
 * Unpack message Cluster_Header_RR.
 *
 * @param[out] dst_p Object to unpack the message into.
 * @param[in] src_p Message to unpack.
 * @param[in] size Size of src_p.
 *
 * @return zero(0) or negative error code.
 */
int sr439_cluster_header_rr_unpack(
    struct sr439_cluster_header_rr_t *dst_p,
    const uint8_t *src_p,
    size_t size);

/**
 * Init message fields to default values from Cluster_Header_RR.
 *
 * @param[in] msg_p Message to init.
 *
 * @return zero(0) on success or (-1) in case of nullptr argument.
 */
int sr439_cluster_header_rr_init(struct sr439_cluster_header_rr_t *msg_p);

/**
 * Encode given signal by applying scaling and offset.
 *
 * @param[in] value Signal to encode.
 *
 * @return Encoded signal.
 */
uint8_t sr439_cluster_header_rr_cluster_frame_type_encode(double value);

/**
 * Decode given signal by applying scaling and offset.
 *
 * @param[in] value Signal to decode.
 *
 * @return Decoded signal.
 */
double sr439_cluster_header_rr_cluster_frame_type_decode(uint8_t value);

/**
 * Check that given signal is in allowed range.
 *
 * @param[in] value Signal to check.
 *
 * @return true if in range, false otherwise.
 */
bool sr439_cluster_header_rr_cluster_frame_type_is_in_range(uint8_t value);

/**
 * Encode given signal by applying scaling and offset.
 *
 * @param[in] value Signal to encode.
 *
 * @return Encoded signal.
 */
uint32_t sr439_cluster_header_rr_cluster_frame_num_encode(double value);

/**
 * Decode given signal by applying scaling and offset.
 *
 * @param[in] value Signal to decode.
 *
 * @return Decoded signal.
 */
double sr439_cluster_header_rr_cluster_frame_num_decode(uint32_t value);

/**
 * Check that given signal is in allowed range.
 *
 * @param[in] value Signal to check.
 *
 * @return true if in range, false otherwise.
 */
bool sr439_cluster_header_rr_cluster_frame_num_is_in_range(uint32_t value);

/**
 * Encode given signal by applying scaling and offset.
 *
 * @param[in] value Signal to encode.
 *
 * @return Encoded signal.
 */
uint8_t sr439_cluster_header_rr_cluster_target_number_encode(double value);

/**
 * Decode given signal by applying scaling and offset.
 *
 * @param[in] value Signal to decode.
 *
 * @return Decoded signal.
 */
double sr439_cluster_header_rr_cluster_target_number_decode(uint8_t value);

/**
 * Check that given signal is in allowed range.
 *
 * @param[in] value Signal to check.
 *
 * @return true if in range, false otherwise.
 */
bool sr439_cluster_header_rr_cluster_target_number_is_in_range(uint8_t value);

/**
 * Encode given signal by applying scaling and offset.
 *
 * @param[in] value Signal to encode.
 *
 * @return Encoded signal.
 */
uint32_t sr439_cluster_header_rr_cluster_timestamp_encode(double value);

/**
 * Decode given signal by applying scaling and offset.
 *
 * @param[in] value Signal to decode.
 *
 * @return Decoded signal.
 */
double sr439_cluster_header_rr_cluster_timestamp_decode(uint32_t value);

/**
 * Check that given signal is in allowed range.
 *
 * @param[in] value Signal to check.
 *
 * @return true if in range, false otherwise.
 */
bool sr439_cluster_header_rr_cluster_timestamp_is_in_range(uint32_t value);

/**
 * Encode given signal by applying scaling and offset.
 *
 * @param[in] value Signal to encode.
 *
 * @return Encoded signal.
 */
uint8_t sr439_cluster_header_rr_cluster_radar_identify_encode(double value);

/**
 * Decode given signal by applying scaling and offset.
 *
 * @param[in] value Signal to decode.
 *
 * @return Decoded signal.
 */
double sr439_cluster_header_rr_cluster_radar_identify_decode(uint8_t value);

/**
 * Check that given signal is in allowed range.
 *
 * @param[in] value Signal to check.
 *
 * @return true if in range, false otherwise.
 */
bool sr439_cluster_header_rr_cluster_radar_identify_is_in_range(uint8_t value);

/**
 * Encode given signal by applying scaling and offset.
 *
 * @param[in] value Signal to encode.
 *
 * @return Encoded signal.
 */
uint16_t sr439_cluster_header_rr_cluster_vehicle_speed_encode(double value);

/**
 * Decode given signal by applying scaling and offset.
 *
 * @param[in] value Signal to decode.
 *
 * @return Decoded signal.
 */
double sr439_cluster_header_rr_cluster_vehicle_speed_decode(uint16_t value);

/**
 * Check that given signal is in allowed range.
 *
 * @param[in] value Signal to check.
 *
 * @return true if in range, false otherwise.
 */
bool sr439_cluster_header_rr_cluster_vehicle_speed_is_in_range(uint16_t value);

/**
 * Encode given signal by applying scaling and offset.
 *
 * @param[in] value Signal to encode.
 *
 * @return Encoded signal.
 */
uint16_t sr439_cluster_header_rr_cluster_yaw_rate_encode(double value);

/**
 * Decode given signal by applying scaling and offset.
 *
 * @param[in] value Signal to decode.
 *
 * @return Decoded signal.
 */
double sr439_cluster_header_rr_cluster_yaw_rate_decode(uint16_t value);

/**
 * Check that given signal is in allowed range.
 *
 * @param[in] value Signal to check.
 *
 * @return true if in range, false otherwise.
 */
bool sr439_cluster_header_rr_cluster_yaw_rate_is_in_range(uint16_t value);

/**
 * Encode given signal by applying scaling and offset.
 *
 * @param[in] value Signal to encode.
 *
 * @return Encoded signal.
 */
uint8_t sr439_cluster_header_rr_cluster_gear_st_encode(double value);

/**
 * Decode given signal by applying scaling and offset.
 *
 * @param[in] value Signal to decode.
 *
 * @return Decoded signal.
 */
double sr439_cluster_header_rr_cluster_gear_st_decode(uint8_t value);

/**
 * Check that given signal is in allowed range.
 *
 * @param[in] value Signal to check.
 *
 * @return true if in range, false otherwise.
 */
bool sr439_cluster_header_rr_cluster_gear_st_is_in_range(uint8_t value);

/**
 * Pack message Cluster_Header_FR.
 *
 * @param[out] dst_p Buffer to pack the message into.
 * @param[in] src_p Data to pack.
 * @param[in] size Size of dst_p.
 *
 * @return Size of packed data, or negative error code.
 */
int sr439_cluster_header_fr_pack(
    uint8_t *dst_p,
    const struct sr439_cluster_header_fr_t *src_p,
    size_t size);

/**
 * Unpack message Cluster_Header_FR.
 *
 * @param[out] dst_p Object to unpack the message into.
 * @param[in] src_p Message to unpack.
 * @param[in] size Size of src_p.
 *
 * @return zero(0) or negative error code.
 */
int sr439_cluster_header_fr_unpack(
    struct sr439_cluster_header_fr_t *dst_p,
    const uint8_t *src_p,
    size_t size);

/**
 * Init message fields to default values from Cluster_Header_FR.
 *
 * @param[in] msg_p Message to init.
 *
 * @return zero(0) on success or (-1) in case of nullptr argument.
 */
int sr439_cluster_header_fr_init(struct sr439_cluster_header_fr_t *msg_p);

/**
 * Encode given signal by applying scaling and offset.
 *
 * @param[in] value Signal to encode.
 *
 * @return Encoded signal.
 */
uint8_t sr439_cluster_header_fr_cluster_frame_type_encode(double value);

/**
 * Decode given signal by applying scaling and offset.
 *
 * @param[in] value Signal to decode.
 *
 * @return Decoded signal.
 */
double sr439_cluster_header_fr_cluster_frame_type_decode(uint8_t value);

/**
 * Check that given signal is in allowed range.
 *
 * @param[in] value Signal to check.
 *
 * @return true if in range, false otherwise.
 */
bool sr439_cluster_header_fr_cluster_frame_type_is_in_range(uint8_t value);

/**
 * Encode given signal by applying scaling and offset.
 *
 * @param[in] value Signal to encode.
 *
 * @return Encoded signal.
 */
uint32_t sr439_cluster_header_fr_cluster_frame_num_encode(double value);

/**
 * Decode given signal by applying scaling and offset.
 *
 * @param[in] value Signal to decode.
 *
 * @return Decoded signal.
 */
double sr439_cluster_header_fr_cluster_frame_num_decode(uint32_t value);

/**
 * Check that given signal is in allowed range.
 *
 * @param[in] value Signal to check.
 *
 * @return true if in range, false otherwise.
 */
bool sr439_cluster_header_fr_cluster_frame_num_is_in_range(uint32_t value);

/**
 * Encode given signal by applying scaling and offset.
 *
 * @param[in] value Signal to encode.
 *
 * @return Encoded signal.
 */
uint8_t sr439_cluster_header_fr_cluster_target_number_encode(double value);

/**
 * Decode given signal by applying scaling and offset.
 *
 * @param[in] value Signal to decode.
 *
 * @return Decoded signal.
 */
double sr439_cluster_header_fr_cluster_target_number_decode(uint8_t value);

/**
 * Check that given signal is in allowed range.
 *
 * @param[in] value Signal to check.
 *
 * @return true if in range, false otherwise.
 */
bool sr439_cluster_header_fr_cluster_target_number_is_in_range(uint8_t value);

/**
 * Encode given signal by applying scaling and offset.
 *
 * @param[in] value Signal to encode.
 *
 * @return Encoded signal.
 */
uint32_t sr439_cluster_header_fr_cluster_timestamp_encode(double value);

/**
 * Decode given signal by applying scaling and offset.
 *
 * @param[in] value Signal to decode.
 *
 * @return Decoded signal.
 */
double sr439_cluster_header_fr_cluster_timestamp_decode(uint32_t value);

/**
 * Check that given signal is in allowed range.
 *
 * @param[in] value Signal to check.
 *
 * @return true if in range, false otherwise.
 */
bool sr439_cluster_header_fr_cluster_timestamp_is_in_range(uint32_t value);

/**
 * Encode given signal by applying scaling and offset.
 *
 * @param[in] value Signal to encode.
 *
 * @return Encoded signal.
 */
uint8_t sr439_cluster_header_fr_cluster_radar_identify_encode(double value);

/**
 * Decode given signal by applying scaling and offset.
 *
 * @param[in] value Signal to decode.
 *
 * @return Decoded signal.
 */
double sr439_cluster_header_fr_cluster_radar_identify_decode(uint8_t value);

/**
 * Check that given signal is in allowed range.
 *
 * @param[in] value Signal to check.
 *
 * @return true if in range, false otherwise.
 */
bool sr439_cluster_header_fr_cluster_radar_identify_is_in_range(uint8_t value);

/**
 * Encode given signal by applying scaling and offset.
 *
 * @param[in] value Signal to encode.
 *
 * @return Encoded signal.
 */
uint16_t sr439_cluster_header_fr_cluster_vehicle_speed_encode(double value);

/**
 * Decode given signal by applying scaling and offset.
 *
 * @param[in] value Signal to decode.
 *
 * @return Decoded signal.
 */
double sr439_cluster_header_fr_cluster_vehicle_speed_decode(uint16_t value);

/**
 * Check that given signal is in allowed range.
 *
 * @param[in] value Signal to check.
 *
 * @return true if in range, false otherwise.
 */
bool sr439_cluster_header_fr_cluster_vehicle_speed_is_in_range(uint16_t value);

/**
 * Encode given signal by applying scaling and offset.
 *
 * @param[in] value Signal to encode.
 *
 * @return Encoded signal.
 */
uint16_t sr439_cluster_header_fr_cluster_yaw_rate_encode(double value);

/**
 * Decode given signal by applying scaling and offset.
 *
 * @param[in] value Signal to decode.
 *
 * @return Decoded signal.
 */
double sr439_cluster_header_fr_cluster_yaw_rate_decode(uint16_t value);

/**
 * Check that given signal is in allowed range.
 *
 * @param[in] value Signal to check.
 *
 * @return true if in range, false otherwise.
 */
bool sr439_cluster_header_fr_cluster_yaw_rate_is_in_range(uint16_t value);

/**
 * Encode given signal by applying scaling and offset.
 *
 * @param[in] value Signal to encode.
 *
 * @return Encoded signal.
 */
uint8_t sr439_cluster_header_fr_cluster_gear_st_encode(double value);

/**
 * Decode given signal by applying scaling and offset.
 *
 * @param[in] value Signal to decode.
 *
 * @return Decoded signal.
 */
double sr439_cluster_header_fr_cluster_gear_st_decode(uint8_t value);

/**
 * Check that given signal is in allowed range.
 *
 * @param[in] value Signal to check.
 *
 * @return true if in range, false otherwise.
 */
bool sr439_cluster_header_fr_cluster_gear_st_is_in_range(uint8_t value);

/**
 * Pack message Cluster_Header_FL.
 *
 * @param[out] dst_p Buffer to pack the message into.
 * @param[in] src_p Data to pack.
 * @param[in] size Size of dst_p.
 *
 * @return Size of packed data, or negative error code.
 */
int sr439_cluster_header_fl_pack(
    uint8_t *dst_p,
    const struct sr439_cluster_header_fl_t *src_p,
    size_t size);

/**
 * Unpack message Cluster_Header_FL.
 *
 * @param[out] dst_p Object to unpack the message into.
 * @param[in] src_p Message to unpack.
 * @param[in] size Size of src_p.
 *
 * @return zero(0) or negative error code.
 */
int sr439_cluster_header_fl_unpack(
    struct sr439_cluster_header_fl_t *dst_p,
    const uint8_t *src_p,
    size_t size);

/**
 * Init message fields to default values from Cluster_Header_FL.
 *
 * @param[in] msg_p Message to init.
 *
 * @return zero(0) on success or (-1) in case of nullptr argument.
 */
int sr439_cluster_header_fl_init(struct sr439_cluster_header_fl_t *msg_p);

/**
 * Encode given signal by applying scaling and offset.
 *
 * @param[in] value Signal to encode.
 *
 * @return Encoded signal.
 */
uint8_t sr439_cluster_header_fl_cluster_frame_type_encode(double value);

/**
 * Decode given signal by applying scaling and offset.
 *
 * @param[in] value Signal to decode.
 *
 * @return Decoded signal.
 */
double sr439_cluster_header_fl_cluster_frame_type_decode(uint8_t value);

/**
 * Check that given signal is in allowed range.
 *
 * @param[in] value Signal to check.
 *
 * @return true if in range, false otherwise.
 */
bool sr439_cluster_header_fl_cluster_frame_type_is_in_range(uint8_t value);

/**
 * Encode given signal by applying scaling and offset.
 *
 * @param[in] value Signal to encode.
 *
 * @return Encoded signal.
 */
uint32_t sr439_cluster_header_fl_cluster_frame_num_encode(double value);

/**
 * Decode given signal by applying scaling and offset.
 *
 * @param[in] value Signal to decode.
 *
 * @return Decoded signal.
 */
double sr439_cluster_header_fl_cluster_frame_num_decode(uint32_t value);

/**
 * Check that given signal is in allowed range.
 *
 * @param[in] value Signal to check.
 *
 * @return true if in range, false otherwise.
 */
bool sr439_cluster_header_fl_cluster_frame_num_is_in_range(uint32_t value);

/**
 * Encode given signal by applying scaling and offset.
 *
 * @param[in] value Signal to encode.
 *
 * @return Encoded signal.
 */
uint8_t sr439_cluster_header_fl_cluster_target_number_encode(double value);

/**
 * Decode given signal by applying scaling and offset.
 *
 * @param[in] value Signal to decode.
 *
 * @return Decoded signal.
 */
double sr439_cluster_header_fl_cluster_target_number_decode(uint8_t value);

/**
 * Check that given signal is in allowed range.
 *
 * @param[in] value Signal to check.
 *
 * @return true if in range, false otherwise.
 */
bool sr439_cluster_header_fl_cluster_target_number_is_in_range(uint8_t value);

/**
 * Encode given signal by applying scaling and offset.
 *
 * @param[in] value Signal to encode.
 *
 * @return Encoded signal.
 */
uint32_t sr439_cluster_header_fl_cluster_timestamp_encode(double value);

/**
 * Decode given signal by applying scaling and offset.
 *
 * @param[in] value Signal to decode.
 *
 * @return Decoded signal.
 */
double sr439_cluster_header_fl_cluster_timestamp_decode(uint32_t value);

/**
 * Check that given signal is in allowed range.
 *
 * @param[in] value Signal to check.
 *
 * @return true if in range, false otherwise.
 */
bool sr439_cluster_header_fl_cluster_timestamp_is_in_range(uint32_t value);

/**
 * Encode given signal by applying scaling and offset.
 *
 * @param[in] value Signal to encode.
 *
 * @return Encoded signal.
 */
uint8_t sr439_cluster_header_fl_cluster_radar_identify_encode(double value);

/**
 * Decode given signal by applying scaling and offset.
 *
 * @param[in] value Signal to decode.
 *
 * @return Decoded signal.
 */
double sr439_cluster_header_fl_cluster_radar_identify_decode(uint8_t value);

/**
 * Check that given signal is in allowed range.
 *
 * @param[in] value Signal to check.
 *
 * @return true if in range, false otherwise.
 */
bool sr439_cluster_header_fl_cluster_radar_identify_is_in_range(uint8_t value);

/**
 * Encode given signal by applying scaling and offset.
 *
 * @param[in] value Signal to encode.
 *
 * @return Encoded signal.
 */
uint16_t sr439_cluster_header_fl_cluster_vehicle_speed_encode(double value);

/**
 * Decode given signal by applying scaling and offset.
 *
 * @param[in] value Signal to decode.
 *
 * @return Decoded signal.
 */
double sr439_cluster_header_fl_cluster_vehicle_speed_decode(uint16_t value);

/**
 * Check that given signal is in allowed range.
 *
 * @param[in] value Signal to check.
 *
 * @return true if in range, false otherwise.
 */
bool sr439_cluster_header_fl_cluster_vehicle_speed_is_in_range(uint16_t value);

/**
 * Encode given signal by applying scaling and offset.
 *
 * @param[in] value Signal to encode.
 *
 * @return Encoded signal.
 */
uint16_t sr439_cluster_header_fl_cluster_yaw_rate_encode(double value);

/**
 * Decode given signal by applying scaling and offset.
 *
 * @param[in] value Signal to decode.
 *
 * @return Decoded signal.
 */
double sr439_cluster_header_fl_cluster_yaw_rate_decode(uint16_t value);

/**
 * Check that given signal is in allowed range.
 *
 * @param[in] value Signal to check.
 *
 * @return true if in range, false otherwise.
 */
bool sr439_cluster_header_fl_cluster_yaw_rate_is_in_range(uint16_t value);

/**
 * Encode given signal by applying scaling and offset.
 *
 * @param[in] value Signal to encode.
 *
 * @return Encoded signal.
 */
uint8_t sr439_cluster_header_fl_cluster_gear_st_encode(double value);

/**
 * Decode given signal by applying scaling and offset.
 *
 * @param[in] value Signal to decode.
 *
 * @return Decoded signal.
 */
double sr439_cluster_header_fl_cluster_gear_st_decode(uint8_t value);

/**
 * Check that given signal is in allowed range.
 *
 * @param[in] value Signal to check.
 *
 * @return true if in range, false otherwise.
 */
bool sr439_cluster_header_fl_cluster_gear_st_is_in_range(uint8_t value);

/**
 * Pack message Cluster_General_Information_RR.
 *
 * @param[out] dst_p Buffer to pack the message into.
 * @param[in] src_p Data to pack.
 * @param[in] size Size of dst_p.
 *
 * @return Size of packed data, or negative error code.
 */
int sr439_cluster_general_information_rr_pack(
    uint8_t *dst_p,
    const struct sr439_cluster_general_information_rr_t *src_p,
    size_t size);

/**
 * Unpack message Cluster_General_Information_RR.
 *
 * @param[out] dst_p Object to unpack the message into.
 * @param[in] src_p Message to unpack.
 * @param[in] size Size of src_p.
 *
 * @return zero(0) or negative error code.
 */
int sr439_cluster_general_information_rr_unpack(
    struct sr439_cluster_general_information_rr_t *dst_p,
    const uint8_t *src_p,
    size_t size);

/**
 * Init message fields to default values from Cluster_General_Information_RR.
 *
 * @param[in] msg_p Message to init.
 *
 * @return zero(0) on success or (-1) in case of nullptr argument.
 */
int sr439_cluster_general_information_rr_init(struct sr439_cluster_general_information_rr_t *msg_p);

/**
 * Encode given signal by applying scaling and offset.
 *
 * @param[in] value Signal to encode.
 *
 * @return Encoded signal.
 */
uint8_t sr439_cluster_general_information_rr_cluster_id_1_encode(double value);

/**
 * Decode given signal by applying scaling and offset.
 *
 * @param[in] value Signal to decode.
 *
 * @return Decoded signal.
 */
double sr439_cluster_general_information_rr_cluster_id_1_decode(uint8_t value);

/**
 * Check that given signal is in allowed range.
 *
 * @param[in] value Signal to check.
 *
 * @return true if in range, false otherwise.
 */
bool sr439_cluster_general_information_rr_cluster_id_1_is_in_range(uint8_t value);

/**
 * Encode given signal by applying scaling and offset.
 *
 * @param[in] value Signal to encode.
 *
 * @return Encoded signal.
 */
uint16_t sr439_cluster_general_information_rr_cluster_range_1_encode(double value);

/**
 * Decode given signal by applying scaling and offset.
 *
 * @param[in] value Signal to decode.
 *
 * @return Decoded signal.
 */
double sr439_cluster_general_information_rr_cluster_range_1_decode(uint16_t value);

/**
 * Check that given signal is in allowed range.
 *
 * @param[in] value Signal to check.
 *
 * @return true if in range, false otherwise.
 */
bool sr439_cluster_general_information_rr_cluster_range_1_is_in_range(uint16_t value);

/**
 * Encode given signal by applying scaling and offset.
 *
 * @param[in] value Signal to encode.
 *
 * @return Encoded signal.
 */
uint16_t sr439_cluster_general_information_rr_cluster_velocity_1_encode(double value);

/**
 * Decode given signal by applying scaling and offset.
 *
 * @param[in] value Signal to decode.
 *
 * @return Decoded signal.
 */
double sr439_cluster_general_information_rr_cluster_velocity_1_decode(uint16_t value);

/**
 * Check that given signal is in allowed range.
 *
 * @param[in] value Signal to check.
 *
 * @return true if in range, false otherwise.
 */
bool sr439_cluster_general_information_rr_cluster_velocity_1_is_in_range(uint16_t value);

/**
 * Encode given signal by applying scaling and offset.
 *
 * @param[in] value Signal to encode.
 *
 * @return Encoded signal.
 */
uint16_t sr439_cluster_general_information_rr_cluster_azimuth_1_encode(double value);

/**
 * Decode given signal by applying scaling and offset.
 *
 * @param[in] value Signal to decode.
 *
 * @return Decoded signal.
 */
double sr439_cluster_general_information_rr_cluster_azimuth_1_decode(uint16_t value);

/**
 * Check that given signal is in allowed range.
 *
 * @param[in] value Signal to check.
 *
 * @return true if in range, false otherwise.
 */
bool sr439_cluster_general_information_rr_cluster_azimuth_1_is_in_range(uint16_t value);

/**
 * Encode given signal by applying scaling and offset.
 *
 * @param[in] value Signal to encode.
 *
 * @return Encoded signal.
 */
uint16_t sr439_cluster_general_information_rr_cluster_elevation_1_encode(double value);

/**
 * Decode given signal by applying scaling and offset.
 *
 * @param[in] value Signal to decode.
 *
 * @return Decoded signal.
 */
double sr439_cluster_general_information_rr_cluster_elevation_1_decode(uint16_t value);

/**
 * Check that given signal is in allowed range.
 *
 * @param[in] value Signal to check.
 *
 * @return true if in range, false otherwise.
 */
bool sr439_cluster_general_information_rr_cluster_elevation_1_is_in_range(uint16_t value);

/**
 * Encode given signal by applying scaling and offset.
 *
 * @param[in] value Signal to encode.
 *
 * @return Encoded signal.
 */
uint8_t sr439_cluster_general_information_rr_cluster_dyn_prop_1_encode(double value);

/**
 * Decode given signal by applying scaling and offset.
 *
 * @param[in] value Signal to decode.
 *
 * @return Decoded signal.
 */
double sr439_cluster_general_information_rr_cluster_dyn_prop_1_decode(uint8_t value);

/**
 * Check that given signal is in allowed range.
 *
 * @param[in] value Signal to check.
 *
 * @return true if in range, false otherwise.
 */
bool sr439_cluster_general_information_rr_cluster_dyn_prop_1_is_in_range(uint8_t value);

/**
 * Encode given signal by applying scaling and offset.
 *
 * @param[in] value Signal to encode.
 *
 * @return Encoded signal.
 */
uint8_t sr439_cluster_general_information_rr_cluster_prob_of_exist_1_encode(double value);

/**
 * Decode given signal by applying scaling and offset.
 *
 * @param[in] value Signal to decode.
 *
 * @return Decoded signal.
 */
double sr439_cluster_general_information_rr_cluster_prob_of_exist_1_decode(uint8_t value);

/**
 * Check that given signal is in allowed range.
 *
 * @param[in] value Signal to check.
 *
 * @return true if in range, false otherwise.
 */
bool sr439_cluster_general_information_rr_cluster_prob_of_exist_1_is_in_range(uint8_t value);

/**
 * Encode given signal by applying scaling and offset.
 *
 * @param[in] value Signal to encode.
 *
 * @return Encoded signal.
 */
uint8_t sr439_cluster_general_information_rr_cluster_rcs_1_encode(double value);

/**
 * Decode given signal by applying scaling and offset.
 *
 * @param[in] value Signal to decode.
 *
 * @return Decoded signal.
 */
double sr439_cluster_general_information_rr_cluster_rcs_1_decode(uint8_t value);

/**
 * Check that given signal is in allowed range.
 *
 * @param[in] value Signal to check.
 *
 * @return true if in range, false otherwise.
 */
bool sr439_cluster_general_information_rr_cluster_rcs_1_is_in_range(uint8_t value);

/**
 * Encode given signal by applying scaling and offset.
 *
 * @param[in] value Signal to encode.
 *
 * @return Encoded signal.
 */
uint16_t sr439_cluster_general_information_rr_cluster_power_1_encode(double value);

/**
 * Decode given signal by applying scaling and offset.
 *
 * @param[in] value Signal to decode.
 *
 * @return Decoded signal.
 */
double sr439_cluster_general_information_rr_cluster_power_1_decode(uint16_t value);

/**
 * Check that given signal is in allowed range.
 *
 * @param[in] value Signal to check.
 *
 * @return true if in range, false otherwise.
 */
bool sr439_cluster_general_information_rr_cluster_power_1_is_in_range(uint16_t value);

/**
 * Encode given signal by applying scaling and offset.
 *
 * @param[in] value Signal to encode.
 *
 * @return Encoded signal.
 */
uint16_t sr439_cluster_general_information_rr_cluster_snr_1_encode(double value);

/**
 * Decode given signal by applying scaling and offset.
 *
 * @param[in] value Signal to decode.
 *
 * @return Decoded signal.
 */
double sr439_cluster_general_information_rr_cluster_snr_1_decode(uint16_t value);

/**
 * Check that given signal is in allowed range.
 *
 * @param[in] value Signal to check.
 *
 * @return true if in range, false otherwise.
 */
bool sr439_cluster_general_information_rr_cluster_snr_1_is_in_range(uint16_t value);

/**
 * Encode given signal by applying scaling and offset.
 *
 * @param[in] value Signal to encode.
 *
 * @return Encoded signal.
 */
uint8_t sr439_cluster_general_information_rr_cluster_id_2_encode(double value);

/**
 * Decode given signal by applying scaling and offset.
 *
 * @param[in] value Signal to decode.
 *
 * @return Decoded signal.
 */
double sr439_cluster_general_information_rr_cluster_id_2_decode(uint8_t value);

/**
 * Check that given signal is in allowed range.
 *
 * @param[in] value Signal to check.
 *
 * @return true if in range, false otherwise.
 */
bool sr439_cluster_general_information_rr_cluster_id_2_is_in_range(uint8_t value);

/**
 * Encode given signal by applying scaling and offset.
 *
 * @param[in] value Signal to encode.
 *
 * @return Encoded signal.
 */
uint16_t sr439_cluster_general_information_rr_cluster_range_2_encode(double value);

/**
 * Decode given signal by applying scaling and offset.
 *
 * @param[in] value Signal to decode.
 *
 * @return Decoded signal.
 */
double sr439_cluster_general_information_rr_cluster_range_2_decode(uint16_t value);

/**
 * Check that given signal is in allowed range.
 *
 * @param[in] value Signal to check.
 *
 * @return true if in range, false otherwise.
 */
bool sr439_cluster_general_information_rr_cluster_range_2_is_in_range(uint16_t value);

/**
 * Encode given signal by applying scaling and offset.
 *
 * @param[in] value Signal to encode.
 *
 * @return Encoded signal.
 */
uint16_t sr439_cluster_general_information_rr_cluster_velocity_2_encode(double value);

/**
 * Decode given signal by applying scaling and offset.
 *
 * @param[in] value Signal to decode.
 *
 * @return Decoded signal.
 */
double sr439_cluster_general_information_rr_cluster_velocity_2_decode(uint16_t value);

/**
 * Check that given signal is in allowed range.
 *
 * @param[in] value Signal to check.
 *
 * @return true if in range, false otherwise.
 */
bool sr439_cluster_general_information_rr_cluster_velocity_2_is_in_range(uint16_t value);

/**
 * Encode given signal by applying scaling and offset.
 *
 * @param[in] value Signal to encode.
 *
 * @return Encoded signal.
 */
uint16_t sr439_cluster_general_information_rr_cluster_azimuth_2_encode(double value);

/**
 * Decode given signal by applying scaling and offset.
 *
 * @param[in] value Signal to decode.
 *
 * @return Decoded signal.
 */
double sr439_cluster_general_information_rr_cluster_azimuth_2_decode(uint16_t value);

/**
 * Check that given signal is in allowed range.
 *
 * @param[in] value Signal to check.
 *
 * @return true if in range, false otherwise.
 */
bool sr439_cluster_general_information_rr_cluster_azimuth_2_is_in_range(uint16_t value);

/**
 * Encode given signal by applying scaling and offset.
 *
 * @param[in] value Signal to encode.
 *
 * @return Encoded signal.
 */
uint16_t sr439_cluster_general_information_rr_cluster_elevation_2_encode(double value);

/**
 * Decode given signal by applying scaling and offset.
 *
 * @param[in] value Signal to decode.
 *
 * @return Decoded signal.
 */
double sr439_cluster_general_information_rr_cluster_elevation_2_decode(uint16_t value);

/**
 * Check that given signal is in allowed range.
 *
 * @param[in] value Signal to check.
 *
 * @return true if in range, false otherwise.
 */
bool sr439_cluster_general_information_rr_cluster_elevation_2_is_in_range(uint16_t value);

/**
 * Encode given signal by applying scaling and offset.
 *
 * @param[in] value Signal to encode.
 *
 * @return Encoded signal.
 */
uint8_t sr439_cluster_general_information_rr_cluster_dyn_prop_2_encode(double value);

/**
 * Decode given signal by applying scaling and offset.
 *
 * @param[in] value Signal to decode.
 *
 * @return Decoded signal.
 */
double sr439_cluster_general_information_rr_cluster_dyn_prop_2_decode(uint8_t value);

/**
 * Check that given signal is in allowed range.
 *
 * @param[in] value Signal to check.
 *
 * @return true if in range, false otherwise.
 */
bool sr439_cluster_general_information_rr_cluster_dyn_prop_2_is_in_range(uint8_t value);

/**
 * Encode given signal by applying scaling and offset.
 *
 * @param[in] value Signal to encode.
 *
 * @return Encoded signal.
 */
uint8_t sr439_cluster_general_information_rr_cluster_prob_of_exist_2_encode(double value);

/**
 * Decode given signal by applying scaling and offset.
 *
 * @param[in] value Signal to decode.
 *
 * @return Decoded signal.
 */
double sr439_cluster_general_information_rr_cluster_prob_of_exist_2_decode(uint8_t value);

/**
 * Check that given signal is in allowed range.
 *
 * @param[in] value Signal to check.
 *
 * @return true if in range, false otherwise.
 */
bool sr439_cluster_general_information_rr_cluster_prob_of_exist_2_is_in_range(uint8_t value);

/**
 * Encode given signal by applying scaling and offset.
 *
 * @param[in] value Signal to encode.
 *
 * @return Encoded signal.
 */
uint8_t sr439_cluster_general_information_rr_cluster_rcs_2_encode(double value);

/**
 * Decode given signal by applying scaling and offset.
 *
 * @param[in] value Signal to decode.
 *
 * @return Decoded signal.
 */
double sr439_cluster_general_information_rr_cluster_rcs_2_decode(uint8_t value);

/**
 * Check that given signal is in allowed range.
 *
 * @param[in] value Signal to check.
 *
 * @return true if in range, false otherwise.
 */
bool sr439_cluster_general_information_rr_cluster_rcs_2_is_in_range(uint8_t value);

/**
 * Encode given signal by applying scaling and offset.
 *
 * @param[in] value Signal to encode.
 *
 * @return Encoded signal.
 */
uint16_t sr439_cluster_general_information_rr_cluster_power_2_encode(double value);

/**
 * Decode given signal by applying scaling and offset.
 *
 * @param[in] value Signal to decode.
 *
 * @return Decoded signal.
 */
double sr439_cluster_general_information_rr_cluster_power_2_decode(uint16_t value);

/**
 * Check that given signal is in allowed range.
 *
 * @param[in] value Signal to check.
 *
 * @return true if in range, false otherwise.
 */
bool sr439_cluster_general_information_rr_cluster_power_2_is_in_range(uint16_t value);

/**
 * Encode given signal by applying scaling and offset.
 *
 * @param[in] value Signal to encode.
 *
 * @return Encoded signal.
 */
uint16_t sr439_cluster_general_information_rr_cluster_snr_2_encode(double value);

/**
 * Decode given signal by applying scaling and offset.
 *
 * @param[in] value Signal to decode.
 *
 * @return Decoded signal.
 */
double sr439_cluster_general_information_rr_cluster_snr_2_decode(uint16_t value);

/**
 * Check that given signal is in allowed range.
 *
 * @param[in] value Signal to check.
 *
 * @return true if in range, false otherwise.
 */
bool sr439_cluster_general_information_rr_cluster_snr_2_is_in_range(uint16_t value);

/**
 * Encode given signal by applying scaling and offset.
 *
 * @param[in] value Signal to encode.
 *
 * @return Encoded signal.
 */
uint8_t sr439_cluster_general_information_rr_cluster_id_3_encode(double value);

/**
 * Decode given signal by applying scaling and offset.
 *
 * @param[in] value Signal to decode.
 *
 * @return Decoded signal.
 */
double sr439_cluster_general_information_rr_cluster_id_3_decode(uint8_t value);

/**
 * Check that given signal is in allowed range.
 *
 * @param[in] value Signal to check.
 *
 * @return true if in range, false otherwise.
 */
bool sr439_cluster_general_information_rr_cluster_id_3_is_in_range(uint8_t value);

/**
 * Encode given signal by applying scaling and offset.
 *
 * @param[in] value Signal to encode.
 *
 * @return Encoded signal.
 */
uint16_t sr439_cluster_general_information_rr_cluster_range_3_encode(double value);

/**
 * Decode given signal by applying scaling and offset.
 *
 * @param[in] value Signal to decode.
 *
 * @return Decoded signal.
 */
double sr439_cluster_general_information_rr_cluster_range_3_decode(uint16_t value);

/**
 * Check that given signal is in allowed range.
 *
 * @param[in] value Signal to check.
 *
 * @return true if in range, false otherwise.
 */
bool sr439_cluster_general_information_rr_cluster_range_3_is_in_range(uint16_t value);

/**
 * Encode given signal by applying scaling and offset.
 *
 * @param[in] value Signal to encode.
 *
 * @return Encoded signal.
 */
uint16_t sr439_cluster_general_information_rr_cluster_velocity_3_encode(double value);

/**
 * Decode given signal by applying scaling and offset.
 *
 * @param[in] value Signal to decode.
 *
 * @return Decoded signal.
 */
double sr439_cluster_general_information_rr_cluster_velocity_3_decode(uint16_t value);

/**
 * Check that given signal is in allowed range.
 *
 * @param[in] value Signal to check.
 *
 * @return true if in range, false otherwise.
 */
bool sr439_cluster_general_information_rr_cluster_velocity_3_is_in_range(uint16_t value);

/**
 * Encode given signal by applying scaling and offset.
 *
 * @param[in] value Signal to encode.
 *
 * @return Encoded signal.
 */
uint16_t sr439_cluster_general_information_rr_cluster_azimuth_3_encode(double value);

/**
 * Decode given signal by applying scaling and offset.
 *
 * @param[in] value Signal to decode.
 *
 * @return Decoded signal.
 */
double sr439_cluster_general_information_rr_cluster_azimuth_3_decode(uint16_t value);

/**
 * Check that given signal is in allowed range.
 *
 * @param[in] value Signal to check.
 *
 * @return true if in range, false otherwise.
 */
bool sr439_cluster_general_information_rr_cluster_azimuth_3_is_in_range(uint16_t value);

/**
 * Encode given signal by applying scaling and offset.
 *
 * @param[in] value Signal to encode.
 *
 * @return Encoded signal.
 */
uint16_t sr439_cluster_general_information_rr_cluster_elevation_3_encode(double value);

/**
 * Decode given signal by applying scaling and offset.
 *
 * @param[in] value Signal to decode.
 *
 * @return Decoded signal.
 */
double sr439_cluster_general_information_rr_cluster_elevation_3_decode(uint16_t value);

/**
 * Check that given signal is in allowed range.
 *
 * @param[in] value Signal to check.
 *
 * @return true if in range, false otherwise.
 */
bool sr439_cluster_general_information_rr_cluster_elevation_3_is_in_range(uint16_t value);

/**
 * Encode given signal by applying scaling and offset.
 *
 * @param[in] value Signal to encode.
 *
 * @return Encoded signal.
 */
uint8_t sr439_cluster_general_information_rr_cluster_dyn_prop_3_encode(double value);

/**
 * Decode given signal by applying scaling and offset.
 *
 * @param[in] value Signal to decode.
 *
 * @return Decoded signal.
 */
double sr439_cluster_general_information_rr_cluster_dyn_prop_3_decode(uint8_t value);

/**
 * Check that given signal is in allowed range.
 *
 * @param[in] value Signal to check.
 *
 * @return true if in range, false otherwise.
 */
bool sr439_cluster_general_information_rr_cluster_dyn_prop_3_is_in_range(uint8_t value);

/**
 * Encode given signal by applying scaling and offset.
 *
 * @param[in] value Signal to encode.
 *
 * @return Encoded signal.
 */
uint8_t sr439_cluster_general_information_rr_cluster_prob_of_exist_3_encode(double value);

/**
 * Decode given signal by applying scaling and offset.
 *
 * @param[in] value Signal to decode.
 *
 * @return Decoded signal.
 */
double sr439_cluster_general_information_rr_cluster_prob_of_exist_3_decode(uint8_t value);

/**
 * Check that given signal is in allowed range.
 *
 * @param[in] value Signal to check.
 *
 * @return true if in range, false otherwise.
 */
bool sr439_cluster_general_information_rr_cluster_prob_of_exist_3_is_in_range(uint8_t value);

/**
 * Encode given signal by applying scaling and offset.
 *
 * @param[in] value Signal to encode.
 *
 * @return Encoded signal.
 */
uint8_t sr439_cluster_general_information_rr_cluster_rcs_3_encode(double value);

/**
 * Decode given signal by applying scaling and offset.
 *
 * @param[in] value Signal to decode.
 *
 * @return Decoded signal.
 */
double sr439_cluster_general_information_rr_cluster_rcs_3_decode(uint8_t value);

/**
 * Check that given signal is in allowed range.
 *
 * @param[in] value Signal to check.
 *
 * @return true if in range, false otherwise.
 */
bool sr439_cluster_general_information_rr_cluster_rcs_3_is_in_range(uint8_t value);

/**
 * Encode given signal by applying scaling and offset.
 *
 * @param[in] value Signal to encode.
 *
 * @return Encoded signal.
 */
uint16_t sr439_cluster_general_information_rr_cluster_power_3_encode(double value);

/**
 * Decode given signal by applying scaling and offset.
 *
 * @param[in] value Signal to decode.
 *
 * @return Decoded signal.
 */
double sr439_cluster_general_information_rr_cluster_power_3_decode(uint16_t value);

/**
 * Check that given signal is in allowed range.
 *
 * @param[in] value Signal to check.
 *
 * @return true if in range, false otherwise.
 */
bool sr439_cluster_general_information_rr_cluster_power_3_is_in_range(uint16_t value);

/**
 * Encode given signal by applying scaling and offset.
 *
 * @param[in] value Signal to encode.
 *
 * @return Encoded signal.
 */
uint16_t sr439_cluster_general_information_rr_cluster_snr_3_encode(double value);

/**
 * Decode given signal by applying scaling and offset.
 *
 * @param[in] value Signal to decode.
 *
 * @return Decoded signal.
 */
double sr439_cluster_general_information_rr_cluster_snr_3_decode(uint16_t value);

/**
 * Check that given signal is in allowed range.
 *
 * @param[in] value Signal to check.
 *
 * @return true if in range, false otherwise.
 */
bool sr439_cluster_general_information_rr_cluster_snr_3_is_in_range(uint16_t value);

/**
 * Encode given signal by applying scaling and offset.
 *
 * @param[in] value Signal to encode.
 *
 * @return Encoded signal.
 */
uint8_t sr439_cluster_general_information_rr_cluster_id_4_encode(double value);

/**
 * Decode given signal by applying scaling and offset.
 *
 * @param[in] value Signal to decode.
 *
 * @return Decoded signal.
 */
double sr439_cluster_general_information_rr_cluster_id_4_decode(uint8_t value);

/**
 * Check that given signal is in allowed range.
 *
 * @param[in] value Signal to check.
 *
 * @return true if in range, false otherwise.
 */
bool sr439_cluster_general_information_rr_cluster_id_4_is_in_range(uint8_t value);

/**
 * Encode given signal by applying scaling and offset.
 *
 * @param[in] value Signal to encode.
 *
 * @return Encoded signal.
 */
uint16_t sr439_cluster_general_information_rr_cluster_range_4_encode(double value);

/**
 * Decode given signal by applying scaling and offset.
 *
 * @param[in] value Signal to decode.
 *
 * @return Decoded signal.
 */
double sr439_cluster_general_information_rr_cluster_range_4_decode(uint16_t value);

/**
 * Check that given signal is in allowed range.
 *
 * @param[in] value Signal to check.
 *
 * @return true if in range, false otherwise.
 */
bool sr439_cluster_general_information_rr_cluster_range_4_is_in_range(uint16_t value);

/**
 * Encode given signal by applying scaling and offset.
 *
 * @param[in] value Signal to encode.
 *
 * @return Encoded signal.
 */
uint16_t sr439_cluster_general_information_rr_cluster_velocity_4_encode(double value);

/**
 * Decode given signal by applying scaling and offset.
 *
 * @param[in] value Signal to decode.
 *
 * @return Decoded signal.
 */
double sr439_cluster_general_information_rr_cluster_velocity_4_decode(uint16_t value);

/**
 * Check that given signal is in allowed range.
 *
 * @param[in] value Signal to check.
 *
 * @return true if in range, false otherwise.
 */
bool sr439_cluster_general_information_rr_cluster_velocity_4_is_in_range(uint16_t value);

/**
 * Encode given signal by applying scaling and offset.
 *
 * @param[in] value Signal to encode.
 *
 * @return Encoded signal.
 */
uint16_t sr439_cluster_general_information_rr_cluster_azimuth_4_encode(double value);

/**
 * Decode given signal by applying scaling and offset.
 *
 * @param[in] value Signal to decode.
 *
 * @return Decoded signal.
 */
double sr439_cluster_general_information_rr_cluster_azimuth_4_decode(uint16_t value);

/**
 * Check that given signal is in allowed range.
 *
 * @param[in] value Signal to check.
 *
 * @return true if in range, false otherwise.
 */
bool sr439_cluster_general_information_rr_cluster_azimuth_4_is_in_range(uint16_t value);

/**
 * Encode given signal by applying scaling and offset.
 *
 * @param[in] value Signal to encode.
 *
 * @return Encoded signal.
 */
uint16_t sr439_cluster_general_information_rr_cluster_elevation_4_encode(double value);

/**
 * Decode given signal by applying scaling and offset.
 *
 * @param[in] value Signal to decode.
 *
 * @return Decoded signal.
 */
double sr439_cluster_general_information_rr_cluster_elevation_4_decode(uint16_t value);

/**
 * Check that given signal is in allowed range.
 *
 * @param[in] value Signal to check.
 *
 * @return true if in range, false otherwise.
 */
bool sr439_cluster_general_information_rr_cluster_elevation_4_is_in_range(uint16_t value);

/**
 * Encode given signal by applying scaling and offset.
 *
 * @param[in] value Signal to encode.
 *
 * @return Encoded signal.
 */
uint8_t sr439_cluster_general_information_rr_cluster_dyn_prop_4_encode(double value);

/**
 * Decode given signal by applying scaling and offset.
 *
 * @param[in] value Signal to decode.
 *
 * @return Decoded signal.
 */
double sr439_cluster_general_information_rr_cluster_dyn_prop_4_decode(uint8_t value);

/**
 * Check that given signal is in allowed range.
 *
 * @param[in] value Signal to check.
 *
 * @return true if in range, false otherwise.
 */
bool sr439_cluster_general_information_rr_cluster_dyn_prop_4_is_in_range(uint8_t value);

/**
 * Encode given signal by applying scaling and offset.
 *
 * @param[in] value Signal to encode.
 *
 * @return Encoded signal.
 */
uint8_t sr439_cluster_general_information_rr_cluster_prob_of_exist_4_encode(double value);

/**
 * Decode given signal by applying scaling and offset.
 *
 * @param[in] value Signal to decode.
 *
 * @return Decoded signal.
 */
double sr439_cluster_general_information_rr_cluster_prob_of_exist_4_decode(uint8_t value);

/**
 * Check that given signal is in allowed range.
 *
 * @param[in] value Signal to check.
 *
 * @return true if in range, false otherwise.
 */
bool sr439_cluster_general_information_rr_cluster_prob_of_exist_4_is_in_range(uint8_t value);

/**
 * Encode given signal by applying scaling and offset.
 *
 * @param[in] value Signal to encode.
 *
 * @return Encoded signal.
 */
uint8_t sr439_cluster_general_information_rr_cluster_rcs_4_encode(double value);

/**
 * Decode given signal by applying scaling and offset.
 *
 * @param[in] value Signal to decode.
 *
 * @return Decoded signal.
 */
double sr439_cluster_general_information_rr_cluster_rcs_4_decode(uint8_t value);

/**
 * Check that given signal is in allowed range.
 *
 * @param[in] value Signal to check.
 *
 * @return true if in range, false otherwise.
 */
bool sr439_cluster_general_information_rr_cluster_rcs_4_is_in_range(uint8_t value);

/**
 * Encode given signal by applying scaling and offset.
 *
 * @param[in] value Signal to encode.
 *
 * @return Encoded signal.
 */
uint16_t sr439_cluster_general_information_rr_cluster_power_4_encode(double value);

/**
 * Decode given signal by applying scaling and offset.
 *
 * @param[in] value Signal to decode.
 *
 * @return Decoded signal.
 */
double sr439_cluster_general_information_rr_cluster_power_4_decode(uint16_t value);

/**
 * Check that given signal is in allowed range.
 *
 * @param[in] value Signal to check.
 *
 * @return true if in range, false otherwise.
 */
bool sr439_cluster_general_information_rr_cluster_power_4_is_in_range(uint16_t value);

/**
 * Encode given signal by applying scaling and offset.
 *
 * @param[in] value Signal to encode.
 *
 * @return Encoded signal.
 */
uint16_t sr439_cluster_general_information_rr_cluster_snr_4_encode(double value);

/**
 * Decode given signal by applying scaling and offset.
 *
 * @param[in] value Signal to decode.
 *
 * @return Decoded signal.
 */
double sr439_cluster_general_information_rr_cluster_snr_4_decode(uint16_t value);

/**
 * Check that given signal is in allowed range.
 *
 * @param[in] value Signal to check.
 *
 * @return true if in range, false otherwise.
 */
bool sr439_cluster_general_information_rr_cluster_snr_4_is_in_range(uint16_t value);

/**
 * Encode given signal by applying scaling and offset.
 *
 * @param[in] value Signal to encode.
 *
 * @return Encoded signal.
 */
uint8_t sr439_cluster_general_information_rr_cluster_id_5_encode(double value);

/**
 * Decode given signal by applying scaling and offset.
 *
 * @param[in] value Signal to decode.
 *
 * @return Decoded signal.
 */
double sr439_cluster_general_information_rr_cluster_id_5_decode(uint8_t value);

/**
 * Check that given signal is in allowed range.
 *
 * @param[in] value Signal to check.
 *
 * @return true if in range, false otherwise.
 */
bool sr439_cluster_general_information_rr_cluster_id_5_is_in_range(uint8_t value);

/**
 * Encode given signal by applying scaling and offset.
 *
 * @param[in] value Signal to encode.
 *
 * @return Encoded signal.
 */
uint16_t sr439_cluster_general_information_rr_cluster_range_5_encode(double value);

/**
 * Decode given signal by applying scaling and offset.
 *
 * @param[in] value Signal to decode.
 *
 * @return Decoded signal.
 */
double sr439_cluster_general_information_rr_cluster_range_5_decode(uint16_t value);

/**
 * Check that given signal is in allowed range.
 *
 * @param[in] value Signal to check.
 *
 * @return true if in range, false otherwise.
 */
bool sr439_cluster_general_information_rr_cluster_range_5_is_in_range(uint16_t value);

/**
 * Encode given signal by applying scaling and offset.
 *
 * @param[in] value Signal to encode.
 *
 * @return Encoded signal.
 */
uint16_t sr439_cluster_general_information_rr_cluster_velocity_5_encode(double value);

/**
 * Decode given signal by applying scaling and offset.
 *
 * @param[in] value Signal to decode.
 *
 * @return Decoded signal.
 */
double sr439_cluster_general_information_rr_cluster_velocity_5_decode(uint16_t value);

/**
 * Check that given signal is in allowed range.
 *
 * @param[in] value Signal to check.
 *
 * @return true if in range, false otherwise.
 */
bool sr439_cluster_general_information_rr_cluster_velocity_5_is_in_range(uint16_t value);

/**
 * Encode given signal by applying scaling and offset.
 *
 * @param[in] value Signal to encode.
 *
 * @return Encoded signal.
 */
uint16_t sr439_cluster_general_information_rr_cluster_azimuth_5_encode(double value);

/**
 * Decode given signal by applying scaling and offset.
 *
 * @param[in] value Signal to decode.
 *
 * @return Decoded signal.
 */
double sr439_cluster_general_information_rr_cluster_azimuth_5_decode(uint16_t value);

/**
 * Check that given signal is in allowed range.
 *
 * @param[in] value Signal to check.
 *
 * @return true if in range, false otherwise.
 */
bool sr439_cluster_general_information_rr_cluster_azimuth_5_is_in_range(uint16_t value);

/**
 * Encode given signal by applying scaling and offset.
 *
 * @param[in] value Signal to encode.
 *
 * @return Encoded signal.
 */
uint16_t sr439_cluster_general_information_rr_cluster_elevation_5_encode(double value);

/**
 * Decode given signal by applying scaling and offset.
 *
 * @param[in] value Signal to decode.
 *
 * @return Decoded signal.
 */
double sr439_cluster_general_information_rr_cluster_elevation_5_decode(uint16_t value);

/**
 * Check that given signal is in allowed range.
 *
 * @param[in] value Signal to check.
 *
 * @return true if in range, false otherwise.
 */
bool sr439_cluster_general_information_rr_cluster_elevation_5_is_in_range(uint16_t value);

/**
 * Encode given signal by applying scaling and offset.
 *
 * @param[in] value Signal to encode.
 *
 * @return Encoded signal.
 */
uint8_t sr439_cluster_general_information_rr_cluster_dyn_prop_5_encode(double value);

/**
 * Decode given signal by applying scaling and offset.
 *
 * @param[in] value Signal to decode.
 *
 * @return Decoded signal.
 */
double sr439_cluster_general_information_rr_cluster_dyn_prop_5_decode(uint8_t value);

/**
 * Check that given signal is in allowed range.
 *
 * @param[in] value Signal to check.
 *
 * @return true if in range, false otherwise.
 */
bool sr439_cluster_general_information_rr_cluster_dyn_prop_5_is_in_range(uint8_t value);

/**
 * Encode given signal by applying scaling and offset.
 *
 * @param[in] value Signal to encode.
 *
 * @return Encoded signal.
 */
uint8_t sr439_cluster_general_information_rr_cluster_prob_of_exist_5_encode(double value);

/**
 * Decode given signal by applying scaling and offset.
 *
 * @param[in] value Signal to decode.
 *
 * @return Decoded signal.
 */
double sr439_cluster_general_information_rr_cluster_prob_of_exist_5_decode(uint8_t value);

/**
 * Check that given signal is in allowed range.
 *
 * @param[in] value Signal to check.
 *
 * @return true if in range, false otherwise.
 */
bool sr439_cluster_general_information_rr_cluster_prob_of_exist_5_is_in_range(uint8_t value);

/**
 * Encode given signal by applying scaling and offset.
 *
 * @param[in] value Signal to encode.
 *
 * @return Encoded signal.
 */
uint8_t sr439_cluster_general_information_rr_cluster_rcs_5_encode(double value);

/**
 * Decode given signal by applying scaling and offset.
 *
 * @param[in] value Signal to decode.
 *
 * @return Decoded signal.
 */
double sr439_cluster_general_information_rr_cluster_rcs_5_decode(uint8_t value);

/**
 * Check that given signal is in allowed range.
 *
 * @param[in] value Signal to check.
 *
 * @return true if in range, false otherwise.
 */
bool sr439_cluster_general_information_rr_cluster_rcs_5_is_in_range(uint8_t value);

/**
 * Encode given signal by applying scaling and offset.
 *
 * @param[in] value Signal to encode.
 *
 * @return Encoded signal.
 */
uint16_t sr439_cluster_general_information_rr_cluster_power_5_encode(double value);

/**
 * Decode given signal by applying scaling and offset.
 *
 * @param[in] value Signal to decode.
 *
 * @return Decoded signal.
 */
double sr439_cluster_general_information_rr_cluster_power_5_decode(uint16_t value);

/**
 * Check that given signal is in allowed range.
 *
 * @param[in] value Signal to check.
 *
 * @return true if in range, false otherwise.
 */
bool sr439_cluster_general_information_rr_cluster_power_5_is_in_range(uint16_t value);

/**
 * Encode given signal by applying scaling and offset.
 *
 * @param[in] value Signal to encode.
 *
 * @return Encoded signal.
 */
uint16_t sr439_cluster_general_information_rr_cluster_snr_5_encode(double value);

/**
 * Decode given signal by applying scaling and offset.
 *
 * @param[in] value Signal to decode.
 *
 * @return Decoded signal.
 */
double sr439_cluster_general_information_rr_cluster_snr_5_decode(uint16_t value);

/**
 * Check that given signal is in allowed range.
 *
 * @param[in] value Signal to check.
 *
 * @return true if in range, false otherwise.
 */
bool sr439_cluster_general_information_rr_cluster_snr_5_is_in_range(uint16_t value);

/**
 * Pack message Cluster_General_Information_FR.
 *
 * @param[out] dst_p Buffer to pack the message into.
 * @param[in] src_p Data to pack.
 * @param[in] size Size of dst_p.
 *
 * @return Size of packed data, or negative error code.
 */
int sr439_cluster_general_information_fr_pack(
    uint8_t *dst_p,
    const struct sr439_cluster_general_information_fr_t *src_p,
    size_t size);

/**
 * Unpack message Cluster_General_Information_FR.
 *
 * @param[out] dst_p Object to unpack the message into.
 * @param[in] src_p Message to unpack.
 * @param[in] size Size of src_p.
 *
 * @return zero(0) or negative error code.
 */
int sr439_cluster_general_information_fr_unpack(
    struct sr439_cluster_general_information_fr_t *dst_p,
    const uint8_t *src_p,
    size_t size);

/**
 * Init message fields to default values from Cluster_General_Information_FR.
 *
 * @param[in] msg_p Message to init.
 *
 * @return zero(0) on success or (-1) in case of nullptr argument.
 */
int sr439_cluster_general_information_fr_init(struct sr439_cluster_general_information_fr_t *msg_p);

/**
 * Encode given signal by applying scaling and offset.
 *
 * @param[in] value Signal to encode.
 *
 * @return Encoded signal.
 */
uint8_t sr439_cluster_general_information_fr_cluster_id_1_encode(double value);

/**
 * Decode given signal by applying scaling and offset.
 *
 * @param[in] value Signal to decode.
 *
 * @return Decoded signal.
 */
double sr439_cluster_general_information_fr_cluster_id_1_decode(uint8_t value);

/**
 * Check that given signal is in allowed range.
 *
 * @param[in] value Signal to check.
 *
 * @return true if in range, false otherwise.
 */
bool sr439_cluster_general_information_fr_cluster_id_1_is_in_range(uint8_t value);

/**
 * Encode given signal by applying scaling and offset.
 *
 * @param[in] value Signal to encode.
 *
 * @return Encoded signal.
 */
uint16_t sr439_cluster_general_information_fr_cluster_range_1_encode(double value);

/**
 * Decode given signal by applying scaling and offset.
 *
 * @param[in] value Signal to decode.
 *
 * @return Decoded signal.
 */
double sr439_cluster_general_information_fr_cluster_range_1_decode(uint16_t value);

/**
 * Check that given signal is in allowed range.
 *
 * @param[in] value Signal to check.
 *
 * @return true if in range, false otherwise.
 */
bool sr439_cluster_general_information_fr_cluster_range_1_is_in_range(uint16_t value);

/**
 * Encode given signal by applying scaling and offset.
 *
 * @param[in] value Signal to encode.
 *
 * @return Encoded signal.
 */
uint16_t sr439_cluster_general_information_fr_cluster_velocity_1_encode(double value);

/**
 * Decode given signal by applying scaling and offset.
 *
 * @param[in] value Signal to decode.
 *
 * @return Decoded signal.
 */
double sr439_cluster_general_information_fr_cluster_velocity_1_decode(uint16_t value);

/**
 * Check that given signal is in allowed range.
 *
 * @param[in] value Signal to check.
 *
 * @return true if in range, false otherwise.
 */
bool sr439_cluster_general_information_fr_cluster_velocity_1_is_in_range(uint16_t value);

/**
 * Encode given signal by applying scaling and offset.
 *
 * @param[in] value Signal to encode.
 *
 * @return Encoded signal.
 */
uint16_t sr439_cluster_general_information_fr_cluster_azimuth_1_encode(double value);

/**
 * Decode given signal by applying scaling and offset.
 *
 * @param[in] value Signal to decode.
 *
 * @return Decoded signal.
 */
double sr439_cluster_general_information_fr_cluster_azimuth_1_decode(uint16_t value);

/**
 * Check that given signal is in allowed range.
 *
 * @param[in] value Signal to check.
 *
 * @return true if in range, false otherwise.
 */
bool sr439_cluster_general_information_fr_cluster_azimuth_1_is_in_range(uint16_t value);

/**
 * Encode given signal by applying scaling and offset.
 *
 * @param[in] value Signal to encode.
 *
 * @return Encoded signal.
 */
uint16_t sr439_cluster_general_information_fr_cluster_elevation_1_encode(double value);

/**
 * Decode given signal by applying scaling and offset.
 *
 * @param[in] value Signal to decode.
 *
 * @return Decoded signal.
 */
double sr439_cluster_general_information_fr_cluster_elevation_1_decode(uint16_t value);

/**
 * Check that given signal is in allowed range.
 *
 * @param[in] value Signal to check.
 *
 * @return true if in range, false otherwise.
 */
bool sr439_cluster_general_information_fr_cluster_elevation_1_is_in_range(uint16_t value);

/**
 * Encode given signal by applying scaling and offset.
 *
 * @param[in] value Signal to encode.
 *
 * @return Encoded signal.
 */
uint8_t sr439_cluster_general_information_fr_cluster_dyn_prop_1_encode(double value);

/**
 * Decode given signal by applying scaling and offset.
 *
 * @param[in] value Signal to decode.
 *
 * @return Decoded signal.
 */
double sr439_cluster_general_information_fr_cluster_dyn_prop_1_decode(uint8_t value);

/**
 * Check that given signal is in allowed range.
 *
 * @param[in] value Signal to check.
 *
 * @return true if in range, false otherwise.
 */
bool sr439_cluster_general_information_fr_cluster_dyn_prop_1_is_in_range(uint8_t value);

/**
 * Encode given signal by applying scaling and offset.
 *
 * @param[in] value Signal to encode.
 *
 * @return Encoded signal.
 */
uint8_t sr439_cluster_general_information_fr_cluster_prob_of_exist_1_encode(double value);

/**
 * Decode given signal by applying scaling and offset.
 *
 * @param[in] value Signal to decode.
 *
 * @return Decoded signal.
 */
double sr439_cluster_general_information_fr_cluster_prob_of_exist_1_decode(uint8_t value);

/**
 * Check that given signal is in allowed range.
 *
 * @param[in] value Signal to check.
 *
 * @return true if in range, false otherwise.
 */
bool sr439_cluster_general_information_fr_cluster_prob_of_exist_1_is_in_range(uint8_t value);

/**
 * Encode given signal by applying scaling and offset.
 *
 * @param[in] value Signal to encode.
 *
 * @return Encoded signal.
 */
uint8_t sr439_cluster_general_information_fr_cluster_rcs_1_encode(double value);

/**
 * Decode given signal by applying scaling and offset.
 *
 * @param[in] value Signal to decode.
 *
 * @return Decoded signal.
 */
double sr439_cluster_general_information_fr_cluster_rcs_1_decode(uint8_t value);

/**
 * Check that given signal is in allowed range.
 *
 * @param[in] value Signal to check.
 *
 * @return true if in range, false otherwise.
 */
bool sr439_cluster_general_information_fr_cluster_rcs_1_is_in_range(uint8_t value);

/**
 * Encode given signal by applying scaling and offset.
 *
 * @param[in] value Signal to encode.
 *
 * @return Encoded signal.
 */
uint16_t sr439_cluster_general_information_fr_cluster_power_1_encode(double value);

/**
 * Decode given signal by applying scaling and offset.
 *
 * @param[in] value Signal to decode.
 *
 * @return Decoded signal.
 */
double sr439_cluster_general_information_fr_cluster_power_1_decode(uint16_t value);

/**
 * Check that given signal is in allowed range.
 *
 * @param[in] value Signal to check.
 *
 * @return true if in range, false otherwise.
 */
bool sr439_cluster_general_information_fr_cluster_power_1_is_in_range(uint16_t value);

/**
 * Encode given signal by applying scaling and offset.
 *
 * @param[in] value Signal to encode.
 *
 * @return Encoded signal.
 */
uint16_t sr439_cluster_general_information_fr_cluster_snr_1_encode(double value);

/**
 * Decode given signal by applying scaling and offset.
 *
 * @param[in] value Signal to decode.
 *
 * @return Decoded signal.
 */
double sr439_cluster_general_information_fr_cluster_snr_1_decode(uint16_t value);

/**
 * Check that given signal is in allowed range.
 *
 * @param[in] value Signal to check.
 *
 * @return true if in range, false otherwise.
 */
bool sr439_cluster_general_information_fr_cluster_snr_1_is_in_range(uint16_t value);

/**
 * Encode given signal by applying scaling and offset.
 *
 * @param[in] value Signal to encode.
 *
 * @return Encoded signal.
 */
uint8_t sr439_cluster_general_information_fr_cluster_id_2_encode(double value);

/**
 * Decode given signal by applying scaling and offset.
 *
 * @param[in] value Signal to decode.
 *
 * @return Decoded signal.
 */
double sr439_cluster_general_information_fr_cluster_id_2_decode(uint8_t value);

/**
 * Check that given signal is in allowed range.
 *
 * @param[in] value Signal to check.
 *
 * @return true if in range, false otherwise.
 */
bool sr439_cluster_general_information_fr_cluster_id_2_is_in_range(uint8_t value);

/**
 * Encode given signal by applying scaling and offset.
 *
 * @param[in] value Signal to encode.
 *
 * @return Encoded signal.
 */
uint16_t sr439_cluster_general_information_fr_cluster_range_2_encode(double value);

/**
 * Decode given signal by applying scaling and offset.
 *
 * @param[in] value Signal to decode.
 *
 * @return Decoded signal.
 */
double sr439_cluster_general_information_fr_cluster_range_2_decode(uint16_t value);

/**
 * Check that given signal is in allowed range.
 *
 * @param[in] value Signal to check.
 *
 * @return true if in range, false otherwise.
 */
bool sr439_cluster_general_information_fr_cluster_range_2_is_in_range(uint16_t value);

/**
 * Encode given signal by applying scaling and offset.
 *
 * @param[in] value Signal to encode.
 *
 * @return Encoded signal.
 */
uint16_t sr439_cluster_general_information_fr_cluster_velocity_2_encode(double value);

/**
 * Decode given signal by applying scaling and offset.
 *
 * @param[in] value Signal to decode.
 *
 * @return Decoded signal.
 */
double sr439_cluster_general_information_fr_cluster_velocity_2_decode(uint16_t value);

/**
 * Check that given signal is in allowed range.
 *
 * @param[in] value Signal to check.
 *
 * @return true if in range, false otherwise.
 */
bool sr439_cluster_general_information_fr_cluster_velocity_2_is_in_range(uint16_t value);

/**
 * Encode given signal by applying scaling and offset.
 *
 * @param[in] value Signal to encode.
 *
 * @return Encoded signal.
 */
uint16_t sr439_cluster_general_information_fr_cluster_azimuth_2_encode(double value);

/**
 * Decode given signal by applying scaling and offset.
 *
 * @param[in] value Signal to decode.
 *
 * @return Decoded signal.
 */
double sr439_cluster_general_information_fr_cluster_azimuth_2_decode(uint16_t value);

/**
 * Check that given signal is in allowed range.
 *
 * @param[in] value Signal to check.
 *
 * @return true if in range, false otherwise.
 */
bool sr439_cluster_general_information_fr_cluster_azimuth_2_is_in_range(uint16_t value);

/**
 * Encode given signal by applying scaling and offset.
 *
 * @param[in] value Signal to encode.
 *
 * @return Encoded signal.
 */
uint16_t sr439_cluster_general_information_fr_cluster_elevation_2_encode(double value);

/**
 * Decode given signal by applying scaling and offset.
 *
 * @param[in] value Signal to decode.
 *
 * @return Decoded signal.
 */
double sr439_cluster_general_information_fr_cluster_elevation_2_decode(uint16_t value);

/**
 * Check that given signal is in allowed range.
 *
 * @param[in] value Signal to check.
 *
 * @return true if in range, false otherwise.
 */
bool sr439_cluster_general_information_fr_cluster_elevation_2_is_in_range(uint16_t value);

/**
 * Encode given signal by applying scaling and offset.
 *
 * @param[in] value Signal to encode.
 *
 * @return Encoded signal.
 */
uint8_t sr439_cluster_general_information_fr_cluster_dyn_prop_2_encode(double value);

/**
 * Decode given signal by applying scaling and offset.
 *
 * @param[in] value Signal to decode.
 *
 * @return Decoded signal.
 */
double sr439_cluster_general_information_fr_cluster_dyn_prop_2_decode(uint8_t value);

/**
 * Check that given signal is in allowed range.
 *
 * @param[in] value Signal to check.
 *
 * @return true if in range, false otherwise.
 */
bool sr439_cluster_general_information_fr_cluster_dyn_prop_2_is_in_range(uint8_t value);

/**
 * Encode given signal by applying scaling and offset.
 *
 * @param[in] value Signal to encode.
 *
 * @return Encoded signal.
 */
uint8_t sr439_cluster_general_information_fr_cluster_prob_of_exist_2_encode(double value);

/**
 * Decode given signal by applying scaling and offset.
 *
 * @param[in] value Signal to decode.
 *
 * @return Decoded signal.
 */
double sr439_cluster_general_information_fr_cluster_prob_of_exist_2_decode(uint8_t value);

/**
 * Check that given signal is in allowed range.
 *
 * @param[in] value Signal to check.
 *
 * @return true if in range, false otherwise.
 */
bool sr439_cluster_general_information_fr_cluster_prob_of_exist_2_is_in_range(uint8_t value);

/**
 * Encode given signal by applying scaling and offset.
 *
 * @param[in] value Signal to encode.
 *
 * @return Encoded signal.
 */
uint8_t sr439_cluster_general_information_fr_cluster_rcs_2_encode(double value);

/**
 * Decode given signal by applying scaling and offset.
 *
 * @param[in] value Signal to decode.
 *
 * @return Decoded signal.
 */
double sr439_cluster_general_information_fr_cluster_rcs_2_decode(uint8_t value);

/**
 * Check that given signal is in allowed range.
 *
 * @param[in] value Signal to check.
 *
 * @return true if in range, false otherwise.
 */
bool sr439_cluster_general_information_fr_cluster_rcs_2_is_in_range(uint8_t value);

/**
 * Encode given signal by applying scaling and offset.
 *
 * @param[in] value Signal to encode.
 *
 * @return Encoded signal.
 */
uint16_t sr439_cluster_general_information_fr_cluster_power_2_encode(double value);

/**
 * Decode given signal by applying scaling and offset.
 *
 * @param[in] value Signal to decode.
 *
 * @return Decoded signal.
 */
double sr439_cluster_general_information_fr_cluster_power_2_decode(uint16_t value);

/**
 * Check that given signal is in allowed range.
 *
 * @param[in] value Signal to check.
 *
 * @return true if in range, false otherwise.
 */
bool sr439_cluster_general_information_fr_cluster_power_2_is_in_range(uint16_t value);

/**
 * Encode given signal by applying scaling and offset.
 *
 * @param[in] value Signal to encode.
 *
 * @return Encoded signal.
 */
uint16_t sr439_cluster_general_information_fr_cluster_snr_2_encode(double value);

/**
 * Decode given signal by applying scaling and offset.
 *
 * @param[in] value Signal to decode.
 *
 * @return Decoded signal.
 */
double sr439_cluster_general_information_fr_cluster_snr_2_decode(uint16_t value);

/**
 * Check that given signal is in allowed range.
 *
 * @param[in] value Signal to check.
 *
 * @return true if in range, false otherwise.
 */
bool sr439_cluster_general_information_fr_cluster_snr_2_is_in_range(uint16_t value);

/**
 * Encode given signal by applying scaling and offset.
 *
 * @param[in] value Signal to encode.
 *
 * @return Encoded signal.
 */
uint8_t sr439_cluster_general_information_fr_cluster_id_3_encode(double value);

/**
 * Decode given signal by applying scaling and offset.
 *
 * @param[in] value Signal to decode.
 *
 * @return Decoded signal.
 */
double sr439_cluster_general_information_fr_cluster_id_3_decode(uint8_t value);

/**
 * Check that given signal is in allowed range.
 *
 * @param[in] value Signal to check.
 *
 * @return true if in range, false otherwise.
 */
bool sr439_cluster_general_information_fr_cluster_id_3_is_in_range(uint8_t value);

/**
 * Encode given signal by applying scaling and offset.
 *
 * @param[in] value Signal to encode.
 *
 * @return Encoded signal.
 */
uint16_t sr439_cluster_general_information_fr_cluster_range_3_encode(double value);

/**
 * Decode given signal by applying scaling and offset.
 *
 * @param[in] value Signal to decode.
 *
 * @return Decoded signal.
 */
double sr439_cluster_general_information_fr_cluster_range_3_decode(uint16_t value);

/**
 * Check that given signal is in allowed range.
 *
 * @param[in] value Signal to check.
 *
 * @return true if in range, false otherwise.
 */
bool sr439_cluster_general_information_fr_cluster_range_3_is_in_range(uint16_t value);

/**
 * Encode given signal by applying scaling and offset.
 *
 * @param[in] value Signal to encode.
 *
 * @return Encoded signal.
 */
uint16_t sr439_cluster_general_information_fr_cluster_velocity_3_encode(double value);

/**
 * Decode given signal by applying scaling and offset.
 *
 * @param[in] value Signal to decode.
 *
 * @return Decoded signal.
 */
double sr439_cluster_general_information_fr_cluster_velocity_3_decode(uint16_t value);

/**
 * Check that given signal is in allowed range.
 *
 * @param[in] value Signal to check.
 *
 * @return true if in range, false otherwise.
 */
bool sr439_cluster_general_information_fr_cluster_velocity_3_is_in_range(uint16_t value);

/**
 * Encode given signal by applying scaling and offset.
 *
 * @param[in] value Signal to encode.
 *
 * @return Encoded signal.
 */
uint16_t sr439_cluster_general_information_fr_cluster_azimuth_3_encode(double value);

/**
 * Decode given signal by applying scaling and offset.
 *
 * @param[in] value Signal to decode.
 *
 * @return Decoded signal.
 */
double sr439_cluster_general_information_fr_cluster_azimuth_3_decode(uint16_t value);

/**
 * Check that given signal is in allowed range.
 *
 * @param[in] value Signal to check.
 *
 * @return true if in range, false otherwise.
 */
bool sr439_cluster_general_information_fr_cluster_azimuth_3_is_in_range(uint16_t value);

/**
 * Encode given signal by applying scaling and offset.
 *
 * @param[in] value Signal to encode.
 *
 * @return Encoded signal.
 */
uint16_t sr439_cluster_general_information_fr_cluster_elevation_3_encode(double value);

/**
 * Decode given signal by applying scaling and offset.
 *
 * @param[in] value Signal to decode.
 *
 * @return Decoded signal.
 */
double sr439_cluster_general_information_fr_cluster_elevation_3_decode(uint16_t value);

/**
 * Check that given signal is in allowed range.
 *
 * @param[in] value Signal to check.
 *
 * @return true if in range, false otherwise.
 */
bool sr439_cluster_general_information_fr_cluster_elevation_3_is_in_range(uint16_t value);

/**
 * Encode given signal by applying scaling and offset.
 *
 * @param[in] value Signal to encode.
 *
 * @return Encoded signal.
 */
uint8_t sr439_cluster_general_information_fr_cluster_dyn_prop_3_encode(double value);

/**
 * Decode given signal by applying scaling and offset.
 *
 * @param[in] value Signal to decode.
 *
 * @return Decoded signal.
 */
double sr439_cluster_general_information_fr_cluster_dyn_prop_3_decode(uint8_t value);

/**
 * Check that given signal is in allowed range.
 *
 * @param[in] value Signal to check.
 *
 * @return true if in range, false otherwise.
 */
bool sr439_cluster_general_information_fr_cluster_dyn_prop_3_is_in_range(uint8_t value);

/**
 * Encode given signal by applying scaling and offset.
 *
 * @param[in] value Signal to encode.
 *
 * @return Encoded signal.
 */
uint8_t sr439_cluster_general_information_fr_cluster_prob_of_exist_3_encode(double value);

/**
 * Decode given signal by applying scaling and offset.
 *
 * @param[in] value Signal to decode.
 *
 * @return Decoded signal.
 */
double sr439_cluster_general_information_fr_cluster_prob_of_exist_3_decode(uint8_t value);

/**
 * Check that given signal is in allowed range.
 *
 * @param[in] value Signal to check.
 *
 * @return true if in range, false otherwise.
 */
bool sr439_cluster_general_information_fr_cluster_prob_of_exist_3_is_in_range(uint8_t value);

/**
 * Encode given signal by applying scaling and offset.
 *
 * @param[in] value Signal to encode.
 *
 * @return Encoded signal.
 */
uint8_t sr439_cluster_general_information_fr_cluster_rcs_3_encode(double value);

/**
 * Decode given signal by applying scaling and offset.
 *
 * @param[in] value Signal to decode.
 *
 * @return Decoded signal.
 */
double sr439_cluster_general_information_fr_cluster_rcs_3_decode(uint8_t value);

/**
 * Check that given signal is in allowed range.
 *
 * @param[in] value Signal to check.
 *
 * @return true if in range, false otherwise.
 */
bool sr439_cluster_general_information_fr_cluster_rcs_3_is_in_range(uint8_t value);

/**
 * Encode given signal by applying scaling and offset.
 *
 * @param[in] value Signal to encode.
 *
 * @return Encoded signal.
 */
uint16_t sr439_cluster_general_information_fr_cluster_power_3_encode(double value);

/**
 * Decode given signal by applying scaling and offset.
 *
 * @param[in] value Signal to decode.
 *
 * @return Decoded signal.
 */
double sr439_cluster_general_information_fr_cluster_power_3_decode(uint16_t value);

/**
 * Check that given signal is in allowed range.
 *
 * @param[in] value Signal to check.
 *
 * @return true if in range, false otherwise.
 */
bool sr439_cluster_general_information_fr_cluster_power_3_is_in_range(uint16_t value);

/**
 * Encode given signal by applying scaling and offset.
 *
 * @param[in] value Signal to encode.
 *
 * @return Encoded signal.
 */
uint16_t sr439_cluster_general_information_fr_cluster_snr_3_encode(double value);

/**
 * Decode given signal by applying scaling and offset.
 *
 * @param[in] value Signal to decode.
 *
 * @return Decoded signal.
 */
double sr439_cluster_general_information_fr_cluster_snr_3_decode(uint16_t value);

/**
 * Check that given signal is in allowed range.
 *
 * @param[in] value Signal to check.
 *
 * @return true if in range, false otherwise.
 */
bool sr439_cluster_general_information_fr_cluster_snr_3_is_in_range(uint16_t value);

/**
 * Encode given signal by applying scaling and offset.
 *
 * @param[in] value Signal to encode.
 *
 * @return Encoded signal.
 */
uint8_t sr439_cluster_general_information_fr_cluster_id_4_encode(double value);

/**
 * Decode given signal by applying scaling and offset.
 *
 * @param[in] value Signal to decode.
 *
 * @return Decoded signal.
 */
double sr439_cluster_general_information_fr_cluster_id_4_decode(uint8_t value);

/**
 * Check that given signal is in allowed range.
 *
 * @param[in] value Signal to check.
 *
 * @return true if in range, false otherwise.
 */
bool sr439_cluster_general_information_fr_cluster_id_4_is_in_range(uint8_t value);

/**
 * Encode given signal by applying scaling and offset.
 *
 * @param[in] value Signal to encode.
 *
 * @return Encoded signal.
 */
uint16_t sr439_cluster_general_information_fr_cluster_range_4_encode(double value);

/**
 * Decode given signal by applying scaling and offset.
 *
 * @param[in] value Signal to decode.
 *
 * @return Decoded signal.
 */
double sr439_cluster_general_information_fr_cluster_range_4_decode(uint16_t value);

/**
 * Check that given signal is in allowed range.
 *
 * @param[in] value Signal to check.
 *
 * @return true if in range, false otherwise.
 */
bool sr439_cluster_general_information_fr_cluster_range_4_is_in_range(uint16_t value);

/**
 * Encode given signal by applying scaling and offset.
 *
 * @param[in] value Signal to encode.
 *
 * @return Encoded signal.
 */
uint16_t sr439_cluster_general_information_fr_cluster_velocity_4_encode(double value);

/**
 * Decode given signal by applying scaling and offset.
 *
 * @param[in] value Signal to decode.
 *
 * @return Decoded signal.
 */
double sr439_cluster_general_information_fr_cluster_velocity_4_decode(uint16_t value);

/**
 * Check that given signal is in allowed range.
 *
 * @param[in] value Signal to check.
 *
 * @return true if in range, false otherwise.
 */
bool sr439_cluster_general_information_fr_cluster_velocity_4_is_in_range(uint16_t value);

/**
 * Encode given signal by applying scaling and offset.
 *
 * @param[in] value Signal to encode.
 *
 * @return Encoded signal.
 */
uint16_t sr439_cluster_general_information_fr_cluster_azimuth_4_encode(double value);

/**
 * Decode given signal by applying scaling and offset.
 *
 * @param[in] value Signal to decode.
 *
 * @return Decoded signal.
 */
double sr439_cluster_general_information_fr_cluster_azimuth_4_decode(uint16_t value);

/**
 * Check that given signal is in allowed range.
 *
 * @param[in] value Signal to check.
 *
 * @return true if in range, false otherwise.
 */
bool sr439_cluster_general_information_fr_cluster_azimuth_4_is_in_range(uint16_t value);

/**
 * Encode given signal by applying scaling and offset.
 *
 * @param[in] value Signal to encode.
 *
 * @return Encoded signal.
 */
uint16_t sr439_cluster_general_information_fr_cluster_elevation_4_encode(double value);

/**
 * Decode given signal by applying scaling and offset.
 *
 * @param[in] value Signal to decode.
 *
 * @return Decoded signal.
 */
double sr439_cluster_general_information_fr_cluster_elevation_4_decode(uint16_t value);

/**
 * Check that given signal is in allowed range.
 *
 * @param[in] value Signal to check.
 *
 * @return true if in range, false otherwise.
 */
bool sr439_cluster_general_information_fr_cluster_elevation_4_is_in_range(uint16_t value);

/**
 * Encode given signal by applying scaling and offset.
 *
 * @param[in] value Signal to encode.
 *
 * @return Encoded signal.
 */
uint8_t sr439_cluster_general_information_fr_cluster_dyn_prop_4_encode(double value);

/**
 * Decode given signal by applying scaling and offset.
 *
 * @param[in] value Signal to decode.
 *
 * @return Decoded signal.
 */
double sr439_cluster_general_information_fr_cluster_dyn_prop_4_decode(uint8_t value);

/**
 * Check that given signal is in allowed range.
 *
 * @param[in] value Signal to check.
 *
 * @return true if in range, false otherwise.
 */
bool sr439_cluster_general_information_fr_cluster_dyn_prop_4_is_in_range(uint8_t value);

/**
 * Encode given signal by applying scaling and offset.
 *
 * @param[in] value Signal to encode.
 *
 * @return Encoded signal.
 */
uint8_t sr439_cluster_general_information_fr_cluster_prob_of_exist_4_encode(double value);

/**
 * Decode given signal by applying scaling and offset.
 *
 * @param[in] value Signal to decode.
 *
 * @return Decoded signal.
 */
double sr439_cluster_general_information_fr_cluster_prob_of_exist_4_decode(uint8_t value);

/**
 * Check that given signal is in allowed range.
 *
 * @param[in] value Signal to check.
 *
 * @return true if in range, false otherwise.
 */
bool sr439_cluster_general_information_fr_cluster_prob_of_exist_4_is_in_range(uint8_t value);

/**
 * Encode given signal by applying scaling and offset.
 *
 * @param[in] value Signal to encode.
 *
 * @return Encoded signal.
 */
uint8_t sr439_cluster_general_information_fr_cluster_rcs_4_encode(double value);

/**
 * Decode given signal by applying scaling and offset.
 *
 * @param[in] value Signal to decode.
 *
 * @return Decoded signal.
 */
double sr439_cluster_general_information_fr_cluster_rcs_4_decode(uint8_t value);

/**
 * Check that given signal is in allowed range.
 *
 * @param[in] value Signal to check.
 *
 * @return true if in range, false otherwise.
 */
bool sr439_cluster_general_information_fr_cluster_rcs_4_is_in_range(uint8_t value);

/**
 * Encode given signal by applying scaling and offset.
 *
 * @param[in] value Signal to encode.
 *
 * @return Encoded signal.
 */
uint16_t sr439_cluster_general_information_fr_cluster_power_4_encode(double value);

/**
 * Decode given signal by applying scaling and offset.
 *
 * @param[in] value Signal to decode.
 *
 * @return Decoded signal.
 */
double sr439_cluster_general_information_fr_cluster_power_4_decode(uint16_t value);

/**
 * Check that given signal is in allowed range.
 *
 * @param[in] value Signal to check.
 *
 * @return true if in range, false otherwise.
 */
bool sr439_cluster_general_information_fr_cluster_power_4_is_in_range(uint16_t value);

/**
 * Encode given signal by applying scaling and offset.
 *
 * @param[in] value Signal to encode.
 *
 * @return Encoded signal.
 */
uint16_t sr439_cluster_general_information_fr_cluster_snr_4_encode(double value);

/**
 * Decode given signal by applying scaling and offset.
 *
 * @param[in] value Signal to decode.
 *
 * @return Decoded signal.
 */
double sr439_cluster_general_information_fr_cluster_snr_4_decode(uint16_t value);

/**
 * Check that given signal is in allowed range.
 *
 * @param[in] value Signal to check.
 *
 * @return true if in range, false otherwise.
 */
bool sr439_cluster_general_information_fr_cluster_snr_4_is_in_range(uint16_t value);

/**
 * Encode given signal by applying scaling and offset.
 *
 * @param[in] value Signal to encode.
 *
 * @return Encoded signal.
 */
uint8_t sr439_cluster_general_information_fr_cluster_id_5_encode(double value);

/**
 * Decode given signal by applying scaling and offset.
 *
 * @param[in] value Signal to decode.
 *
 * @return Decoded signal.
 */
double sr439_cluster_general_information_fr_cluster_id_5_decode(uint8_t value);

/**
 * Check that given signal is in allowed range.
 *
 * @param[in] value Signal to check.
 *
 * @return true if in range, false otherwise.
 */
bool sr439_cluster_general_information_fr_cluster_id_5_is_in_range(uint8_t value);

/**
 * Encode given signal by applying scaling and offset.
 *
 * @param[in] value Signal to encode.
 *
 * @return Encoded signal.
 */
uint16_t sr439_cluster_general_information_fr_cluster_range_5_encode(double value);

/**
 * Decode given signal by applying scaling and offset.
 *
 * @param[in] value Signal to decode.
 *
 * @return Decoded signal.
 */
double sr439_cluster_general_information_fr_cluster_range_5_decode(uint16_t value);

/**
 * Check that given signal is in allowed range.
 *
 * @param[in] value Signal to check.
 *
 * @return true if in range, false otherwise.
 */
bool sr439_cluster_general_information_fr_cluster_range_5_is_in_range(uint16_t value);

/**
 * Encode given signal by applying scaling and offset.
 *
 * @param[in] value Signal to encode.
 *
 * @return Encoded signal.
 */
uint16_t sr439_cluster_general_information_fr_cluster_velocity_5_encode(double value);

/**
 * Decode given signal by applying scaling and offset.
 *
 * @param[in] value Signal to decode.
 *
 * @return Decoded signal.
 */
double sr439_cluster_general_information_fr_cluster_velocity_5_decode(uint16_t value);

/**
 * Check that given signal is in allowed range.
 *
 * @param[in] value Signal to check.
 *
 * @return true if in range, false otherwise.
 */
bool sr439_cluster_general_information_fr_cluster_velocity_5_is_in_range(uint16_t value);

/**
 * Encode given signal by applying scaling and offset.
 *
 * @param[in] value Signal to encode.
 *
 * @return Encoded signal.
 */
uint16_t sr439_cluster_general_information_fr_cluster_azimuth_5_encode(double value);

/**
 * Decode given signal by applying scaling and offset.
 *
 * @param[in] value Signal to decode.
 *
 * @return Decoded signal.
 */
double sr439_cluster_general_information_fr_cluster_azimuth_5_decode(uint16_t value);

/**
 * Check that given signal is in allowed range.
 *
 * @param[in] value Signal to check.
 *
 * @return true if in range, false otherwise.
 */
bool sr439_cluster_general_information_fr_cluster_azimuth_5_is_in_range(uint16_t value);

/**
 * Encode given signal by applying scaling and offset.
 *
 * @param[in] value Signal to encode.
 *
 * @return Encoded signal.
 */
uint16_t sr439_cluster_general_information_fr_cluster_elevation_5_encode(double value);

/**
 * Decode given signal by applying scaling and offset.
 *
 * @param[in] value Signal to decode.
 *
 * @return Decoded signal.
 */
double sr439_cluster_general_information_fr_cluster_elevation_5_decode(uint16_t value);

/**
 * Check that given signal is in allowed range.
 *
 * @param[in] value Signal to check.
 *
 * @return true if in range, false otherwise.
 */
bool sr439_cluster_general_information_fr_cluster_elevation_5_is_in_range(uint16_t value);

/**
 * Encode given signal by applying scaling and offset.
 *
 * @param[in] value Signal to encode.
 *
 * @return Encoded signal.
 */
uint8_t sr439_cluster_general_information_fr_cluster_dyn_prop_5_encode(double value);

/**
 * Decode given signal by applying scaling and offset.
 *
 * @param[in] value Signal to decode.
 *
 * @return Decoded signal.
 */
double sr439_cluster_general_information_fr_cluster_dyn_prop_5_decode(uint8_t value);

/**
 * Check that given signal is in allowed range.
 *
 * @param[in] value Signal to check.
 *
 * @return true if in range, false otherwise.
 */
bool sr439_cluster_general_information_fr_cluster_dyn_prop_5_is_in_range(uint8_t value);

/**
 * Encode given signal by applying scaling and offset.
 *
 * @param[in] value Signal to encode.
 *
 * @return Encoded signal.
 */
uint8_t sr439_cluster_general_information_fr_cluster_prob_of_exist_5_encode(double value);

/**
 * Decode given signal by applying scaling and offset.
 *
 * @param[in] value Signal to decode.
 *
 * @return Decoded signal.
 */
double sr439_cluster_general_information_fr_cluster_prob_of_exist_5_decode(uint8_t value);

/**
 * Check that given signal is in allowed range.
 *
 * @param[in] value Signal to check.
 *
 * @return true if in range, false otherwise.
 */
bool sr439_cluster_general_information_fr_cluster_prob_of_exist_5_is_in_range(uint8_t value);

/**
 * Encode given signal by applying scaling and offset.
 *
 * @param[in] value Signal to encode.
 *
 * @return Encoded signal.
 */
uint8_t sr439_cluster_general_information_fr_cluster_rcs_5_encode(double value);

/**
 * Decode given signal by applying scaling and offset.
 *
 * @param[in] value Signal to decode.
 *
 * @return Decoded signal.
 */
double sr439_cluster_general_information_fr_cluster_rcs_5_decode(uint8_t value);

/**
 * Check that given signal is in allowed range.
 *
 * @param[in] value Signal to check.
 *
 * @return true if in range, false otherwise.
 */
bool sr439_cluster_general_information_fr_cluster_rcs_5_is_in_range(uint8_t value);

/**
 * Encode given signal by applying scaling and offset.
 *
 * @param[in] value Signal to encode.
 *
 * @return Encoded signal.
 */
uint16_t sr439_cluster_general_information_fr_cluster_power_5_encode(double value);

/**
 * Decode given signal by applying scaling and offset.
 *
 * @param[in] value Signal to decode.
 *
 * @return Decoded signal.
 */
double sr439_cluster_general_information_fr_cluster_power_5_decode(uint16_t value);

/**
 * Check that given signal is in allowed range.
 *
 * @param[in] value Signal to check.
 *
 * @return true if in range, false otherwise.
 */
bool sr439_cluster_general_information_fr_cluster_power_5_is_in_range(uint16_t value);

/**
 * Encode given signal by applying scaling and offset.
 *
 * @param[in] value Signal to encode.
 *
 * @return Encoded signal.
 */
uint16_t sr439_cluster_general_information_fr_cluster_snr_5_encode(double value);

/**
 * Decode given signal by applying scaling and offset.
 *
 * @param[in] value Signal to decode.
 *
 * @return Decoded signal.
 */
double sr439_cluster_general_information_fr_cluster_snr_5_decode(uint16_t value);

/**
 * Check that given signal is in allowed range.
 *
 * @param[in] value Signal to check.
 *
 * @return true if in range, false otherwise.
 */
bool sr439_cluster_general_information_fr_cluster_snr_5_is_in_range(uint16_t value);

/**
 * Pack message Cluster_General_Information_FL.
 *
 * @param[out] dst_p Buffer to pack the message into.
 * @param[in] src_p Data to pack.
 * @param[in] size Size of dst_p.
 *
 * @return Size of packed data, or negative error code.
 */
int sr439_cluster_general_information_fl_pack(
    uint8_t *dst_p,
    const struct sr439_cluster_general_information_fl_t *src_p,
    size_t size);

/**
 * Unpack message Cluster_General_Information_FL.
 *
 * @param[out] dst_p Object to unpack the message into.
 * @param[in] src_p Message to unpack.
 * @param[in] size Size of src_p.
 *
 * @return zero(0) or negative error code.
 */
int sr439_cluster_general_information_fl_unpack(
    struct sr439_cluster_general_information_fl_t *dst_p,
    const uint8_t *src_p,
    size_t size);

/**
 * Init message fields to default values from Cluster_General_Information_FL.
 *
 * @param[in] msg_p Message to init.
 *
 * @return zero(0) on success or (-1) in case of nullptr argument.
 */
int sr439_cluster_general_information_fl_init(struct sr439_cluster_general_information_fl_t *msg_p);

/**
 * Encode given signal by applying scaling and offset.
 *
 * @param[in] value Signal to encode.
 *
 * @return Encoded signal.
 */
uint8_t sr439_cluster_general_information_fl_cluster_id_1_encode(double value);

/**
 * Decode given signal by applying scaling and offset.
 *
 * @param[in] value Signal to decode.
 *
 * @return Decoded signal.
 */
double sr439_cluster_general_information_fl_cluster_id_1_decode(uint8_t value);

/**
 * Check that given signal is in allowed range.
 *
 * @param[in] value Signal to check.
 *
 * @return true if in range, false otherwise.
 */
bool sr439_cluster_general_information_fl_cluster_id_1_is_in_range(uint8_t value);

/**
 * Encode given signal by applying scaling and offset.
 *
 * @param[in] value Signal to encode.
 *
 * @return Encoded signal.
 */
uint16_t sr439_cluster_general_information_fl_cluster_range_1_encode(double value);

/**
 * Decode given signal by applying scaling and offset.
 *
 * @param[in] value Signal to decode.
 *
 * @return Decoded signal.
 */
double sr439_cluster_general_information_fl_cluster_range_1_decode(uint16_t value);

/**
 * Check that given signal is in allowed range.
 *
 * @param[in] value Signal to check.
 *
 * @return true if in range, false otherwise.
 */
bool sr439_cluster_general_information_fl_cluster_range_1_is_in_range(uint16_t value);

/**
 * Encode given signal by applying scaling and offset.
 *
 * @param[in] value Signal to encode.
 *
 * @return Encoded signal.
 */
uint16_t sr439_cluster_general_information_fl_cluster_velocity_1_encode(double value);

/**
 * Decode given signal by applying scaling and offset.
 *
 * @param[in] value Signal to decode.
 *
 * @return Decoded signal.
 */
double sr439_cluster_general_information_fl_cluster_velocity_1_decode(uint16_t value);

/**
 * Check that given signal is in allowed range.
 *
 * @param[in] value Signal to check.
 *
 * @return true if in range, false otherwise.
 */
bool sr439_cluster_general_information_fl_cluster_velocity_1_is_in_range(uint16_t value);

/**
 * Encode given signal by applying scaling and offset.
 *
 * @param[in] value Signal to encode.
 *
 * @return Encoded signal.
 */
uint16_t sr439_cluster_general_information_fl_cluster_azimuth_1_encode(double value);

/**
 * Decode given signal by applying scaling and offset.
 *
 * @param[in] value Signal to decode.
 *
 * @return Decoded signal.
 */
double sr439_cluster_general_information_fl_cluster_azimuth_1_decode(uint16_t value);

/**
 * Check that given signal is in allowed range.
 *
 * @param[in] value Signal to check.
 *
 * @return true if in range, false otherwise.
 */
bool sr439_cluster_general_information_fl_cluster_azimuth_1_is_in_range(uint16_t value);

/**
 * Encode given signal by applying scaling and offset.
 *
 * @param[in] value Signal to encode.
 *
 * @return Encoded signal.
 */
uint16_t sr439_cluster_general_information_fl_cluster_elevation_1_encode(double value);

/**
 * Decode given signal by applying scaling and offset.
 *
 * @param[in] value Signal to decode.
 *
 * @return Decoded signal.
 */
double sr439_cluster_general_information_fl_cluster_elevation_1_decode(uint16_t value);

/**
 * Check that given signal is in allowed range.
 *
 * @param[in] value Signal to check.
 *
 * @return true if in range, false otherwise.
 */
bool sr439_cluster_general_information_fl_cluster_elevation_1_is_in_range(uint16_t value);

/**
 * Encode given signal by applying scaling and offset.
 *
 * @param[in] value Signal to encode.
 *
 * @return Encoded signal.
 */
uint8_t sr439_cluster_general_information_fl_cluster_dyn_prop_1_encode(double value);

/**
 * Decode given signal by applying scaling and offset.
 *
 * @param[in] value Signal to decode.
 *
 * @return Decoded signal.
 */
double sr439_cluster_general_information_fl_cluster_dyn_prop_1_decode(uint8_t value);

/**
 * Check that given signal is in allowed range.
 *
 * @param[in] value Signal to check.
 *
 * @return true if in range, false otherwise.
 */
bool sr439_cluster_general_information_fl_cluster_dyn_prop_1_is_in_range(uint8_t value);

/**
 * Encode given signal by applying scaling and offset.
 *
 * @param[in] value Signal to encode.
 *
 * @return Encoded signal.
 */
uint8_t sr439_cluster_general_information_fl_cluster_prob_of_exist_1_encode(double value);

/**
 * Decode given signal by applying scaling and offset.
 *
 * @param[in] value Signal to decode.
 *
 * @return Decoded signal.
 */
double sr439_cluster_general_information_fl_cluster_prob_of_exist_1_decode(uint8_t value);

/**
 * Check that given signal is in allowed range.
 *
 * @param[in] value Signal to check.
 *
 * @return true if in range, false otherwise.
 */
bool sr439_cluster_general_information_fl_cluster_prob_of_exist_1_is_in_range(uint8_t value);

/**
 * Encode given signal by applying scaling and offset.
 *
 * @param[in] value Signal to encode.
 *
 * @return Encoded signal.
 */
uint8_t sr439_cluster_general_information_fl_cluster_rcs_1_encode(double value);

/**
 * Decode given signal by applying scaling and offset.
 *
 * @param[in] value Signal to decode.
 *
 * @return Decoded signal.
 */
double sr439_cluster_general_information_fl_cluster_rcs_1_decode(uint8_t value);

/**
 * Check that given signal is in allowed range.
 *
 * @param[in] value Signal to check.
 *
 * @return true if in range, false otherwise.
 */
bool sr439_cluster_general_information_fl_cluster_rcs_1_is_in_range(uint8_t value);

/**
 * Encode given signal by applying scaling and offset.
 *
 * @param[in] value Signal to encode.
 *
 * @return Encoded signal.
 */
uint16_t sr439_cluster_general_information_fl_cluster_power_1_encode(double value);

/**
 * Decode given signal by applying scaling and offset.
 *
 * @param[in] value Signal to decode.
 *
 * @return Decoded signal.
 */
double sr439_cluster_general_information_fl_cluster_power_1_decode(uint16_t value);

/**
 * Check that given signal is in allowed range.
 *
 * @param[in] value Signal to check.
 *
 * @return true if in range, false otherwise.
 */
bool sr439_cluster_general_information_fl_cluster_power_1_is_in_range(uint16_t value);

/**
 * Encode given signal by applying scaling and offset.
 *
 * @param[in] value Signal to encode.
 *
 * @return Encoded signal.
 */
uint16_t sr439_cluster_general_information_fl_cluster_snr_1_encode(double value);

/**
 * Decode given signal by applying scaling and offset.
 *
 * @param[in] value Signal to decode.
 *
 * @return Decoded signal.
 */
double sr439_cluster_general_information_fl_cluster_snr_1_decode(uint16_t value);

/**
 * Check that given signal is in allowed range.
 *
 * @param[in] value Signal to check.
 *
 * @return true if in range, false otherwise.
 */
bool sr439_cluster_general_information_fl_cluster_snr_1_is_in_range(uint16_t value);

/**
 * Encode given signal by applying scaling and offset.
 *
 * @param[in] value Signal to encode.
 *
 * @return Encoded signal.
 */
uint8_t sr439_cluster_general_information_fl_cluster_id_2_encode(double value);

/**
 * Decode given signal by applying scaling and offset.
 *
 * @param[in] value Signal to decode.
 *
 * @return Decoded signal.
 */
double sr439_cluster_general_information_fl_cluster_id_2_decode(uint8_t value);

/**
 * Check that given signal is in allowed range.
 *
 * @param[in] value Signal to check.
 *
 * @return true if in range, false otherwise.
 */
bool sr439_cluster_general_information_fl_cluster_id_2_is_in_range(uint8_t value);

/**
 * Encode given signal by applying scaling and offset.
 *
 * @param[in] value Signal to encode.
 *
 * @return Encoded signal.
 */
uint16_t sr439_cluster_general_information_fl_cluster_range_2_encode(double value);

/**
 * Decode given signal by applying scaling and offset.
 *
 * @param[in] value Signal to decode.
 *
 * @return Decoded signal.
 */
double sr439_cluster_general_information_fl_cluster_range_2_decode(uint16_t value);

/**
 * Check that given signal is in allowed range.
 *
 * @param[in] value Signal to check.
 *
 * @return true if in range, false otherwise.
 */
bool sr439_cluster_general_information_fl_cluster_range_2_is_in_range(uint16_t value);

/**
 * Encode given signal by applying scaling and offset.
 *
 * @param[in] value Signal to encode.
 *
 * @return Encoded signal.
 */
uint16_t sr439_cluster_general_information_fl_cluster_velocity_2_encode(double value);

/**
 * Decode given signal by applying scaling and offset.
 *
 * @param[in] value Signal to decode.
 *
 * @return Decoded signal.
 */
double sr439_cluster_general_information_fl_cluster_velocity_2_decode(uint16_t value);

/**
 * Check that given signal is in allowed range.
 *
 * @param[in] value Signal to check.
 *
 * @return true if in range, false otherwise.
 */
bool sr439_cluster_general_information_fl_cluster_velocity_2_is_in_range(uint16_t value);

/**
 * Encode given signal by applying scaling and offset.
 *
 * @param[in] value Signal to encode.
 *
 * @return Encoded signal.
 */
uint16_t sr439_cluster_general_information_fl_cluster_azimuth_2_encode(double value);

/**
 * Decode given signal by applying scaling and offset.
 *
 * @param[in] value Signal to decode.
 *
 * @return Decoded signal.
 */
double sr439_cluster_general_information_fl_cluster_azimuth_2_decode(uint16_t value);

/**
 * Check that given signal is in allowed range.
 *
 * @param[in] value Signal to check.
 *
 * @return true if in range, false otherwise.
 */
bool sr439_cluster_general_information_fl_cluster_azimuth_2_is_in_range(uint16_t value);

/**
 * Encode given signal by applying scaling and offset.
 *
 * @param[in] value Signal to encode.
 *
 * @return Encoded signal.
 */
uint16_t sr439_cluster_general_information_fl_cluster_elevation_2_encode(double value);

/**
 * Decode given signal by applying scaling and offset.
 *
 * @param[in] value Signal to decode.
 *
 * @return Decoded signal.
 */
double sr439_cluster_general_information_fl_cluster_elevation_2_decode(uint16_t value);

/**
 * Check that given signal is in allowed range.
 *
 * @param[in] value Signal to check.
 *
 * @return true if in range, false otherwise.
 */
bool sr439_cluster_general_information_fl_cluster_elevation_2_is_in_range(uint16_t value);

/**
 * Encode given signal by applying scaling and offset.
 *
 * @param[in] value Signal to encode.
 *
 * @return Encoded signal.
 */
uint8_t sr439_cluster_general_information_fl_cluster_dyn_prop_2_encode(double value);

/**
 * Decode given signal by applying scaling and offset.
 *
 * @param[in] value Signal to decode.
 *
 * @return Decoded signal.
 */
double sr439_cluster_general_information_fl_cluster_dyn_prop_2_decode(uint8_t value);

/**
 * Check that given signal is in allowed range.
 *
 * @param[in] value Signal to check.
 *
 * @return true if in range, false otherwise.
 */
bool sr439_cluster_general_information_fl_cluster_dyn_prop_2_is_in_range(uint8_t value);

/**
 * Encode given signal by applying scaling and offset.
 *
 * @param[in] value Signal to encode.
 *
 * @return Encoded signal.
 */
uint8_t sr439_cluster_general_information_fl_cluster_prob_of_exist_2_encode(double value);

/**
 * Decode given signal by applying scaling and offset.
 *
 * @param[in] value Signal to decode.
 *
 * @return Decoded signal.
 */
double sr439_cluster_general_information_fl_cluster_prob_of_exist_2_decode(uint8_t value);

/**
 * Check that given signal is in allowed range.
 *
 * @param[in] value Signal to check.
 *
 * @return true if in range, false otherwise.
 */
bool sr439_cluster_general_information_fl_cluster_prob_of_exist_2_is_in_range(uint8_t value);

/**
 * Encode given signal by applying scaling and offset.
 *
 * @param[in] value Signal to encode.
 *
 * @return Encoded signal.
 */
uint8_t sr439_cluster_general_information_fl_cluster_rcs_2_encode(double value);

/**
 * Decode given signal by applying scaling and offset.
 *
 * @param[in] value Signal to decode.
 *
 * @return Decoded signal.
 */
double sr439_cluster_general_information_fl_cluster_rcs_2_decode(uint8_t value);

/**
 * Check that given signal is in allowed range.
 *
 * @param[in] value Signal to check.
 *
 * @return true if in range, false otherwise.
 */
bool sr439_cluster_general_information_fl_cluster_rcs_2_is_in_range(uint8_t value);

/**
 * Encode given signal by applying scaling and offset.
 *
 * @param[in] value Signal to encode.
 *
 * @return Encoded signal.
 */
uint16_t sr439_cluster_general_information_fl_cluster_power_2_encode(double value);

/**
 * Decode given signal by applying scaling and offset.
 *
 * @param[in] value Signal to decode.
 *
 * @return Decoded signal.
 */
double sr439_cluster_general_information_fl_cluster_power_2_decode(uint16_t value);

/**
 * Check that given signal is in allowed range.
 *
 * @param[in] value Signal to check.
 *
 * @return true if in range, false otherwise.
 */
bool sr439_cluster_general_information_fl_cluster_power_2_is_in_range(uint16_t value);

/**
 * Encode given signal by applying scaling and offset.
 *
 * @param[in] value Signal to encode.
 *
 * @return Encoded signal.
 */
uint16_t sr439_cluster_general_information_fl_cluster_snr_2_encode(double value);

/**
 * Decode given signal by applying scaling and offset.
 *
 * @param[in] value Signal to decode.
 *
 * @return Decoded signal.
 */
double sr439_cluster_general_information_fl_cluster_snr_2_decode(uint16_t value);

/**
 * Check that given signal is in allowed range.
 *
 * @param[in] value Signal to check.
 *
 * @return true if in range, false otherwise.
 */
bool sr439_cluster_general_information_fl_cluster_snr_2_is_in_range(uint16_t value);

/**
 * Encode given signal by applying scaling and offset.
 *
 * @param[in] value Signal to encode.
 *
 * @return Encoded signal.
 */
uint8_t sr439_cluster_general_information_fl_cluster_id_3_encode(double value);

/**
 * Decode given signal by applying scaling and offset.
 *
 * @param[in] value Signal to decode.
 *
 * @return Decoded signal.
 */
double sr439_cluster_general_information_fl_cluster_id_3_decode(uint8_t value);

/**
 * Check that given signal is in allowed range.
 *
 * @param[in] value Signal to check.
 *
 * @return true if in range, false otherwise.
 */
bool sr439_cluster_general_information_fl_cluster_id_3_is_in_range(uint8_t value);

/**
 * Encode given signal by applying scaling and offset.
 *
 * @param[in] value Signal to encode.
 *
 * @return Encoded signal.
 */
uint16_t sr439_cluster_general_information_fl_cluster_range_3_encode(double value);

/**
 * Decode given signal by applying scaling and offset.
 *
 * @param[in] value Signal to decode.
 *
 * @return Decoded signal.
 */
double sr439_cluster_general_information_fl_cluster_range_3_decode(uint16_t value);

/**
 * Check that given signal is in allowed range.
 *
 * @param[in] value Signal to check.
 *
 * @return true if in range, false otherwise.
 */
bool sr439_cluster_general_information_fl_cluster_range_3_is_in_range(uint16_t value);

/**
 * Encode given signal by applying scaling and offset.
 *
 * @param[in] value Signal to encode.
 *
 * @return Encoded signal.
 */
uint16_t sr439_cluster_general_information_fl_cluster_velocity_3_encode(double value);

/**
 * Decode given signal by applying scaling and offset.
 *
 * @param[in] value Signal to decode.
 *
 * @return Decoded signal.
 */
double sr439_cluster_general_information_fl_cluster_velocity_3_decode(uint16_t value);

/**
 * Check that given signal is in allowed range.
 *
 * @param[in] value Signal to check.
 *
 * @return true if in range, false otherwise.
 */
bool sr439_cluster_general_information_fl_cluster_velocity_3_is_in_range(uint16_t value);

/**
 * Encode given signal by applying scaling and offset.
 *
 * @param[in] value Signal to encode.
 *
 * @return Encoded signal.
 */
uint16_t sr439_cluster_general_information_fl_cluster_azimuth_3_encode(double value);

/**
 * Decode given signal by applying scaling and offset.
 *
 * @param[in] value Signal to decode.
 *
 * @return Decoded signal.
 */
double sr439_cluster_general_information_fl_cluster_azimuth_3_decode(uint16_t value);

/**
 * Check that given signal is in allowed range.
 *
 * @param[in] value Signal to check.
 *
 * @return true if in range, false otherwise.
 */
bool sr439_cluster_general_information_fl_cluster_azimuth_3_is_in_range(uint16_t value);

/**
 * Encode given signal by applying scaling and offset.
 *
 * @param[in] value Signal to encode.
 *
 * @return Encoded signal.
 */
uint16_t sr439_cluster_general_information_fl_cluster_elevation_3_encode(double value);

/**
 * Decode given signal by applying scaling and offset.
 *
 * @param[in] value Signal to decode.
 *
 * @return Decoded signal.
 */
double sr439_cluster_general_information_fl_cluster_elevation_3_decode(uint16_t value);

/**
 * Check that given signal is in allowed range.
 *
 * @param[in] value Signal to check.
 *
 * @return true if in range, false otherwise.
 */
bool sr439_cluster_general_information_fl_cluster_elevation_3_is_in_range(uint16_t value);

/**
 * Encode given signal by applying scaling and offset.
 *
 * @param[in] value Signal to encode.
 *
 * @return Encoded signal.
 */
uint8_t sr439_cluster_general_information_fl_cluster_dyn_prop_3_encode(double value);

/**
 * Decode given signal by applying scaling and offset.
 *
 * @param[in] value Signal to decode.
 *
 * @return Decoded signal.
 */
double sr439_cluster_general_information_fl_cluster_dyn_prop_3_decode(uint8_t value);

/**
 * Check that given signal is in allowed range.
 *
 * @param[in] value Signal to check.
 *
 * @return true if in range, false otherwise.
 */
bool sr439_cluster_general_information_fl_cluster_dyn_prop_3_is_in_range(uint8_t value);

/**
 * Encode given signal by applying scaling and offset.
 *
 * @param[in] value Signal to encode.
 *
 * @return Encoded signal.
 */
uint8_t sr439_cluster_general_information_fl_cluster_prob_of_exist_3_encode(double value);

/**
 * Decode given signal by applying scaling and offset.
 *
 * @param[in] value Signal to decode.
 *
 * @return Decoded signal.
 */
double sr439_cluster_general_information_fl_cluster_prob_of_exist_3_decode(uint8_t value);

/**
 * Check that given signal is in allowed range.
 *
 * @param[in] value Signal to check.
 *
 * @return true if in range, false otherwise.
 */
bool sr439_cluster_general_information_fl_cluster_prob_of_exist_3_is_in_range(uint8_t value);

/**
 * Encode given signal by applying scaling and offset.
 *
 * @param[in] value Signal to encode.
 *
 * @return Encoded signal.
 */
uint8_t sr439_cluster_general_information_fl_cluster_rcs_3_encode(double value);

/**
 * Decode given signal by applying scaling and offset.
 *
 * @param[in] value Signal to decode.
 *
 * @return Decoded signal.
 */
double sr439_cluster_general_information_fl_cluster_rcs_3_decode(uint8_t value);

/**
 * Check that given signal is in allowed range.
 *
 * @param[in] value Signal to check.
 *
 * @return true if in range, false otherwise.
 */
bool sr439_cluster_general_information_fl_cluster_rcs_3_is_in_range(uint8_t value);

/**
 * Encode given signal by applying scaling and offset.
 *
 * @param[in] value Signal to encode.
 *
 * @return Encoded signal.
 */
uint16_t sr439_cluster_general_information_fl_cluster_power_3_encode(double value);

/**
 * Decode given signal by applying scaling and offset.
 *
 * @param[in] value Signal to decode.
 *
 * @return Decoded signal.
 */
double sr439_cluster_general_information_fl_cluster_power_3_decode(uint16_t value);

/**
 * Check that given signal is in allowed range.
 *
 * @param[in] value Signal to check.
 *
 * @return true if in range, false otherwise.
 */
bool sr439_cluster_general_information_fl_cluster_power_3_is_in_range(uint16_t value);

/**
 * Encode given signal by applying scaling and offset.
 *
 * @param[in] value Signal to encode.
 *
 * @return Encoded signal.
 */
uint16_t sr439_cluster_general_information_fl_cluster_snr_3_encode(double value);

/**
 * Decode given signal by applying scaling and offset.
 *
 * @param[in] value Signal to decode.
 *
 * @return Decoded signal.
 */
double sr439_cluster_general_information_fl_cluster_snr_3_decode(uint16_t value);

/**
 * Check that given signal is in allowed range.
 *
 * @param[in] value Signal to check.
 *
 * @return true if in range, false otherwise.
 */
bool sr439_cluster_general_information_fl_cluster_snr_3_is_in_range(uint16_t value);

/**
 * Encode given signal by applying scaling and offset.
 *
 * @param[in] value Signal to encode.
 *
 * @return Encoded signal.
 */
uint8_t sr439_cluster_general_information_fl_cluster_id_4_encode(double value);

/**
 * Decode given signal by applying scaling and offset.
 *
 * @param[in] value Signal to decode.
 *
 * @return Decoded signal.
 */
double sr439_cluster_general_information_fl_cluster_id_4_decode(uint8_t value);

/**
 * Check that given signal is in allowed range.
 *
 * @param[in] value Signal to check.
 *
 * @return true if in range, false otherwise.
 */
bool sr439_cluster_general_information_fl_cluster_id_4_is_in_range(uint8_t value);

/**
 * Encode given signal by applying scaling and offset.
 *
 * @param[in] value Signal to encode.
 *
 * @return Encoded signal.
 */
uint16_t sr439_cluster_general_information_fl_cluster_range_4_encode(double value);

/**
 * Decode given signal by applying scaling and offset.
 *
 * @param[in] value Signal to decode.
 *
 * @return Decoded signal.
 */
double sr439_cluster_general_information_fl_cluster_range_4_decode(uint16_t value);

/**
 * Check that given signal is in allowed range.
 *
 * @param[in] value Signal to check.
 *
 * @return true if in range, false otherwise.
 */
bool sr439_cluster_general_information_fl_cluster_range_4_is_in_range(uint16_t value);

/**
 * Encode given signal by applying scaling and offset.
 *
 * @param[in] value Signal to encode.
 *
 * @return Encoded signal.
 */
uint16_t sr439_cluster_general_information_fl_cluster_velocity_4_encode(double value);

/**
 * Decode given signal by applying scaling and offset.
 *
 * @param[in] value Signal to decode.
 *
 * @return Decoded signal.
 */
double sr439_cluster_general_information_fl_cluster_velocity_4_decode(uint16_t value);

/**
 * Check that given signal is in allowed range.
 *
 * @param[in] value Signal to check.
 *
 * @return true if in range, false otherwise.
 */
bool sr439_cluster_general_information_fl_cluster_velocity_4_is_in_range(uint16_t value);

/**
 * Encode given signal by applying scaling and offset.
 *
 * @param[in] value Signal to encode.
 *
 * @return Encoded signal.
 */
uint16_t sr439_cluster_general_information_fl_cluster_azimuth_4_encode(double value);

/**
 * Decode given signal by applying scaling and offset.
 *
 * @param[in] value Signal to decode.
 *
 * @return Decoded signal.
 */
double sr439_cluster_general_information_fl_cluster_azimuth_4_decode(uint16_t value);

/**
 * Check that given signal is in allowed range.
 *
 * @param[in] value Signal to check.
 *
 * @return true if in range, false otherwise.
 */
bool sr439_cluster_general_information_fl_cluster_azimuth_4_is_in_range(uint16_t value);

/**
 * Encode given signal by applying scaling and offset.
 *
 * @param[in] value Signal to encode.
 *
 * @return Encoded signal.
 */
uint16_t sr439_cluster_general_information_fl_cluster_elevation_4_encode(double value);

/**
 * Decode given signal by applying scaling and offset.
 *
 * @param[in] value Signal to decode.
 *
 * @return Decoded signal.
 */
double sr439_cluster_general_information_fl_cluster_elevation_4_decode(uint16_t value);

/**
 * Check that given signal is in allowed range.
 *
 * @param[in] value Signal to check.
 *
 * @return true if in range, false otherwise.
 */
bool sr439_cluster_general_information_fl_cluster_elevation_4_is_in_range(uint16_t value);

/**
 * Encode given signal by applying scaling and offset.
 *
 * @param[in] value Signal to encode.
 *
 * @return Encoded signal.
 */
uint8_t sr439_cluster_general_information_fl_cluster_dyn_prop_4_encode(double value);

/**
 * Decode given signal by applying scaling and offset.
 *
 * @param[in] value Signal to decode.
 *
 * @return Decoded signal.
 */
double sr439_cluster_general_information_fl_cluster_dyn_prop_4_decode(uint8_t value);

/**
 * Check that given signal is in allowed range.
 *
 * @param[in] value Signal to check.
 *
 * @return true if in range, false otherwise.
 */
bool sr439_cluster_general_information_fl_cluster_dyn_prop_4_is_in_range(uint8_t value);

/**
 * Encode given signal by applying scaling and offset.
 *
 * @param[in] value Signal to encode.
 *
 * @return Encoded signal.
 */
uint8_t sr439_cluster_general_information_fl_cluster_prob_of_exist_4_encode(double value);

/**
 * Decode given signal by applying scaling and offset.
 *
 * @param[in] value Signal to decode.
 *
 * @return Decoded signal.
 */
double sr439_cluster_general_information_fl_cluster_prob_of_exist_4_decode(uint8_t value);

/**
 * Check that given signal is in allowed range.
 *
 * @param[in] value Signal to check.
 *
 * @return true if in range, false otherwise.
 */
bool sr439_cluster_general_information_fl_cluster_prob_of_exist_4_is_in_range(uint8_t value);

/**
 * Encode given signal by applying scaling and offset.
 *
 * @param[in] value Signal to encode.
 *
 * @return Encoded signal.
 */
uint8_t sr439_cluster_general_information_fl_cluster_rcs_4_encode(double value);

/**
 * Decode given signal by applying scaling and offset.
 *
 * @param[in] value Signal to decode.
 *
 * @return Decoded signal.
 */
double sr439_cluster_general_information_fl_cluster_rcs_4_decode(uint8_t value);

/**
 * Check that given signal is in allowed range.
 *
 * @param[in] value Signal to check.
 *
 * @return true if in range, false otherwise.
 */
bool sr439_cluster_general_information_fl_cluster_rcs_4_is_in_range(uint8_t value);

/**
 * Encode given signal by applying scaling and offset.
 *
 * @param[in] value Signal to encode.
 *
 * @return Encoded signal.
 */
uint16_t sr439_cluster_general_information_fl_cluster_power_4_encode(double value);

/**
 * Decode given signal by applying scaling and offset.
 *
 * @param[in] value Signal to decode.
 *
 * @return Decoded signal.
 */
double sr439_cluster_general_information_fl_cluster_power_4_decode(uint16_t value);

/**
 * Check that given signal is in allowed range.
 *
 * @param[in] value Signal to check.
 *
 * @return true if in range, false otherwise.
 */
bool sr439_cluster_general_information_fl_cluster_power_4_is_in_range(uint16_t value);

/**
 * Encode given signal by applying scaling and offset.
 *
 * @param[in] value Signal to encode.
 *
 * @return Encoded signal.
 */
uint16_t sr439_cluster_general_information_fl_cluster_snr_4_encode(double value);

/**
 * Decode given signal by applying scaling and offset.
 *
 * @param[in] value Signal to decode.
 *
 * @return Decoded signal.
 */
double sr439_cluster_general_information_fl_cluster_snr_4_decode(uint16_t value);

/**
 * Check that given signal is in allowed range.
 *
 * @param[in] value Signal to check.
 *
 * @return true if in range, false otherwise.
 */
bool sr439_cluster_general_information_fl_cluster_snr_4_is_in_range(uint16_t value);

/**
 * Encode given signal by applying scaling and offset.
 *
 * @param[in] value Signal to encode.
 *
 * @return Encoded signal.
 */
uint8_t sr439_cluster_general_information_fl_cluster_id_5_encode(double value);

/**
 * Decode given signal by applying scaling and offset.
 *
 * @param[in] value Signal to decode.
 *
 * @return Decoded signal.
 */
double sr439_cluster_general_information_fl_cluster_id_5_decode(uint8_t value);

/**
 * Check that given signal is in allowed range.
 *
 * @param[in] value Signal to check.
 *
 * @return true if in range, false otherwise.
 */
bool sr439_cluster_general_information_fl_cluster_id_5_is_in_range(uint8_t value);

/**
 * Encode given signal by applying scaling and offset.
 *
 * @param[in] value Signal to encode.
 *
 * @return Encoded signal.
 */
uint16_t sr439_cluster_general_information_fl_cluster_range_5_encode(double value);

/**
 * Decode given signal by applying scaling and offset.
 *
 * @param[in] value Signal to decode.
 *
 * @return Decoded signal.
 */
double sr439_cluster_general_information_fl_cluster_range_5_decode(uint16_t value);

/**
 * Check that given signal is in allowed range.
 *
 * @param[in] value Signal to check.
 *
 * @return true if in range, false otherwise.
 */
bool sr439_cluster_general_information_fl_cluster_range_5_is_in_range(uint16_t value);

/**
 * Encode given signal by applying scaling and offset.
 *
 * @param[in] value Signal to encode.
 *
 * @return Encoded signal.
 */
uint16_t sr439_cluster_general_information_fl_cluster_velocity_5_encode(double value);

/**
 * Decode given signal by applying scaling and offset.
 *
 * @param[in] value Signal to decode.
 *
 * @return Decoded signal.
 */
double sr439_cluster_general_information_fl_cluster_velocity_5_decode(uint16_t value);

/**
 * Check that given signal is in allowed range.
 *
 * @param[in] value Signal to check.
 *
 * @return true if in range, false otherwise.
 */
bool sr439_cluster_general_information_fl_cluster_velocity_5_is_in_range(uint16_t value);

/**
 * Encode given signal by applying scaling and offset.
 *
 * @param[in] value Signal to encode.
 *
 * @return Encoded signal.
 */
uint16_t sr439_cluster_general_information_fl_cluster_azimuth_5_encode(double value);

/**
 * Decode given signal by applying scaling and offset.
 *
 * @param[in] value Signal to decode.
 *
 * @return Decoded signal.
 */
double sr439_cluster_general_information_fl_cluster_azimuth_5_decode(uint16_t value);

/**
 * Check that given signal is in allowed range.
 *
 * @param[in] value Signal to check.
 *
 * @return true if in range, false otherwise.
 */
bool sr439_cluster_general_information_fl_cluster_azimuth_5_is_in_range(uint16_t value);

/**
 * Encode given signal by applying scaling and offset.
 *
 * @param[in] value Signal to encode.
 *
 * @return Encoded signal.
 */
uint16_t sr439_cluster_general_information_fl_cluster_elevation_5_encode(double value);

/**
 * Decode given signal by applying scaling and offset.
 *
 * @param[in] value Signal to decode.
 *
 * @return Decoded signal.
 */
double sr439_cluster_general_information_fl_cluster_elevation_5_decode(uint16_t value);

/**
 * Check that given signal is in allowed range.
 *
 * @param[in] value Signal to check.
 *
 * @return true if in range, false otherwise.
 */
bool sr439_cluster_general_information_fl_cluster_elevation_5_is_in_range(uint16_t value);

/**
 * Encode given signal by applying scaling and offset.
 *
 * @param[in] value Signal to encode.
 *
 * @return Encoded signal.
 */
uint8_t sr439_cluster_general_information_fl_cluster_dyn_prop_5_encode(double value);

/**
 * Decode given signal by applying scaling and offset.
 *
 * @param[in] value Signal to decode.
 *
 * @return Decoded signal.
 */
double sr439_cluster_general_information_fl_cluster_dyn_prop_5_decode(uint8_t value);

/**
 * Check that given signal is in allowed range.
 *
 * @param[in] value Signal to check.
 *
 * @return true if in range, false otherwise.
 */
bool sr439_cluster_general_information_fl_cluster_dyn_prop_5_is_in_range(uint8_t value);

/**
 * Encode given signal by applying scaling and offset.
 *
 * @param[in] value Signal to encode.
 *
 * @return Encoded signal.
 */
uint8_t sr439_cluster_general_information_fl_cluster_prob_of_exist_5_encode(double value);

/**
 * Decode given signal by applying scaling and offset.
 *
 * @param[in] value Signal to decode.
 *
 * @return Decoded signal.
 */
double sr439_cluster_general_information_fl_cluster_prob_of_exist_5_decode(uint8_t value);

/**
 * Check that given signal is in allowed range.
 *
 * @param[in] value Signal to check.
 *
 * @return true if in range, false otherwise.
 */
bool sr439_cluster_general_information_fl_cluster_prob_of_exist_5_is_in_range(uint8_t value);

/**
 * Encode given signal by applying scaling and offset.
 *
 * @param[in] value Signal to encode.
 *
 * @return Encoded signal.
 */
uint8_t sr439_cluster_general_information_fl_cluster_rcs_5_encode(double value);

/**
 * Decode given signal by applying scaling and offset.
 *
 * @param[in] value Signal to decode.
 *
 * @return Decoded signal.
 */
double sr439_cluster_general_information_fl_cluster_rcs_5_decode(uint8_t value);

/**
 * Check that given signal is in allowed range.
 *
 * @param[in] value Signal to check.
 *
 * @return true if in range, false otherwise.
 */
bool sr439_cluster_general_information_fl_cluster_rcs_5_is_in_range(uint8_t value);

/**
 * Encode given signal by applying scaling and offset.
 *
 * @param[in] value Signal to encode.
 *
 * @return Encoded signal.
 */
uint16_t sr439_cluster_general_information_fl_cluster_power_5_encode(double value);

/**
 * Decode given signal by applying scaling and offset.
 *
 * @param[in] value Signal to decode.
 *
 * @return Decoded signal.
 */
double sr439_cluster_general_information_fl_cluster_power_5_decode(uint16_t value);

/**
 * Check that given signal is in allowed range.
 *
 * @param[in] value Signal to check.
 *
 * @return true if in range, false otherwise.
 */
bool sr439_cluster_general_information_fl_cluster_power_5_is_in_range(uint16_t value);

/**
 * Encode given signal by applying scaling and offset.
 *
 * @param[in] value Signal to encode.
 *
 * @return Encoded signal.
 */
uint16_t sr439_cluster_general_information_fl_cluster_snr_5_encode(double value);

/**
 * Decode given signal by applying scaling and offset.
 *
 * @param[in] value Signal to decode.
 *
 * @return Decoded signal.
 */
double sr439_cluster_general_information_fl_cluster_snr_5_decode(uint16_t value);

/**
 * Check that given signal is in allowed range.
 *
 * @param[in] value Signal to check.
 *
 * @return true if in range, false otherwise.
 */
bool sr439_cluster_general_information_fl_cluster_snr_5_is_in_range(uint16_t value);

/**
 * Pack message Obj_Collision_Info_RL.
 *
 * @param[out] dst_p Buffer to pack the message into.
 * @param[in] src_p Data to pack.
 * @param[in] size Size of dst_p.
 *
 * @return Size of packed data, or negative error code.
 */
int sr439_obj_collision_info_rl_pack(
    uint8_t *dst_p,
    const struct sr439_obj_collision_info_rl_t *src_p,
    size_t size);

/**
 * Unpack message Obj_Collision_Info_RL.
 *
 * @param[out] dst_p Object to unpack the message into.
 * @param[in] src_p Message to unpack.
 * @param[in] size Size of src_p.
 *
 * @return zero(0) or negative error code.
 */
int sr439_obj_collision_info_rl_unpack(
    struct sr439_obj_collision_info_rl_t *dst_p,
    const uint8_t *src_p,
    size_t size);

/**
 * Init message fields to default values from Obj_Collision_Info_RL.
 *
 * @param[in] msg_p Message to init.
 *
 * @return zero(0) on success or (-1) in case of nullptr argument.
 */
int sr439_obj_collision_info_rl_init(struct sr439_obj_collision_info_rl_t *msg_p);

/**
 * Encode given signal by applying scaling and offset.
 *
 * @param[in] value Signal to encode.
 *
 * @return Encoded signal.
 */
uint8_t sr439_obj_collision_info_rl_obj_id_encode(double value);

/**
 * Decode given signal by applying scaling and offset.
 *
 * @param[in] value Signal to decode.
 *
 * @return Decoded signal.
 */
double sr439_obj_collision_info_rl_obj_id_decode(uint8_t value);

/**
 * Check that given signal is in allowed range.
 *
 * @param[in] value Signal to check.
 *
 * @return true if in range, false otherwise.
 */
bool sr439_obj_collision_info_rl_obj_id_is_in_range(uint8_t value);

/**
 * Encode given signal by applying scaling and offset.
 *
 * @param[in] value Signal to encode.
 *
 * @return Encoded signal.
 */
uint8_t sr439_obj_collision_info_rl_obj_ref_point_encode(double value);

/**
 * Decode given signal by applying scaling and offset.
 *
 * @param[in] value Signal to decode.
 *
 * @return Decoded signal.
 */
double sr439_obj_collision_info_rl_obj_ref_point_decode(uint8_t value);

/**
 * Check that given signal is in allowed range.
 *
 * @param[in] value Signal to check.
 *
 * @return true if in range, false otherwise.
 */
bool sr439_obj_collision_info_rl_obj_ref_point_is_in_range(uint8_t value);

/**
 * Encode given signal by applying scaling and offset.
 *
 * @param[in] value Signal to encode.
 *
 * @return Encoded signal.
 */
uint8_t sr439_obj_collision_info_rl_obj_track_state_encode(double value);

/**
 * Decode given signal by applying scaling and offset.
 *
 * @param[in] value Signal to decode.
 *
 * @return Decoded signal.
 */
double sr439_obj_collision_info_rl_obj_track_state_decode(uint8_t value);

/**
 * Check that given signal is in allowed range.
 *
 * @param[in] value Signal to check.
 *
 * @return true if in range, false otherwise.
 */
bool sr439_obj_collision_info_rl_obj_track_state_is_in_range(uint8_t value);

/**
 * Encode given signal by applying scaling and offset.
 *
 * @param[in] value Signal to encode.
 *
 * @return Encoded signal.
 */
uint8_t sr439_obj_collision_info_rl_obj_corner_rel_wid_encode(double value);

/**
 * Decode given signal by applying scaling and offset.
 *
 * @param[in] value Signal to decode.
 *
 * @return Decoded signal.
 */
double sr439_obj_collision_info_rl_obj_corner_rel_wid_decode(uint8_t value);

/**
 * Check that given signal is in allowed range.
 *
 * @param[in] value Signal to check.
 *
 * @return true if in range, false otherwise.
 */
bool sr439_obj_collision_info_rl_obj_corner_rel_wid_is_in_range(uint8_t value);

/**
 * Encode given signal by applying scaling and offset.
 *
 * @param[in] value Signal to encode.
 *
 * @return Encoded signal.
 */
uint8_t sr439_obj_collision_info_rl_obj_corner_rel_len_encode(double value);

/**
 * Decode given signal by applying scaling and offset.
 *
 * @param[in] value Signal to decode.
 *
 * @return Decoded signal.
 */
double sr439_obj_collision_info_rl_obj_corner_rel_len_decode(uint8_t value);

/**
 * Check that given signal is in allowed range.
 *
 * @param[in] value Signal to check.
 *
 * @return true if in range, false otherwise.
 */
bool sr439_obj_collision_info_rl_obj_corner_rel_len_is_in_range(uint8_t value);

/**
 * Encode given signal by applying scaling and offset.
 *
 * @param[in] value Signal to encode.
 *
 * @return Encoded signal.
 */
uint16_t sr439_obj_collision_info_rl_obj_yaw_rate_encode(double value);

/**
 * Decode given signal by applying scaling and offset.
 *
 * @param[in] value Signal to decode.
 *
 * @return Decoded signal.
 */
double sr439_obj_collision_info_rl_obj_yaw_rate_decode(uint16_t value);

/**
 * Check that given signal is in allowed range.
 *
 * @param[in] value Signal to check.
 *
 * @return true if in range, false otherwise.
 */
bool sr439_obj_collision_info_rl_obj_yaw_rate_is_in_range(uint16_t value);

/**
 * Pack message Obj_Extended_Info_RL.
 *
 * @param[out] dst_p Buffer to pack the message into.
 * @param[in] src_p Data to pack.
 * @param[in] size Size of dst_p.
 *
 * @return Size of packed data, or negative error code.
 */
int sr439_obj_extended_info_rl_pack(
    uint8_t *dst_p,
    const struct sr439_obj_extended_info_rl_t *src_p,
    size_t size);

/**
 * Unpack message Obj_Extended_Info_RL.
 *
 * @param[out] dst_p Object to unpack the message into.
 * @param[in] src_p Message to unpack.
 * @param[in] size Size of src_p.
 *
 * @return zero(0) or negative error code.
 */
int sr439_obj_extended_info_rl_unpack(
    struct sr439_obj_extended_info_rl_t *dst_p,
    const uint8_t *src_p,
    size_t size);

/**
 * Init message fields to default values from Obj_Extended_Info_RL.
 *
 * @param[in] msg_p Message to init.
 *
 * @return zero(0) on success or (-1) in case of nullptr argument.
 */
int sr439_obj_extended_info_rl_init(struct sr439_obj_extended_info_rl_t *msg_p);

/**
 * Encode given signal by applying scaling and offset.
 *
 * @param[in] value Signal to encode.
 *
 * @return Encoded signal.
 */
uint8_t sr439_obj_extended_info_rl_obj_id_encode(double value);

/**
 * Decode given signal by applying scaling and offset.
 *
 * @param[in] value Signal to decode.
 *
 * @return Decoded signal.
 */
double sr439_obj_extended_info_rl_obj_id_decode(uint8_t value);

/**
 * Check that given signal is in allowed range.
 *
 * @param[in] value Signal to check.
 *
 * @return true if in range, false otherwise.
 */
bool sr439_obj_extended_info_rl_obj_id_is_in_range(uint8_t value);

/**
 * Encode given signal by applying scaling and offset.
 *
 * @param[in] value Signal to encode.
 *
 * @return Encoded signal.
 */
uint16_t sr439_obj_extended_info_rl_obj_arel_lon_encode(double value);

/**
 * Decode given signal by applying scaling and offset.
 *
 * @param[in] value Signal to decode.
 *
 * @return Decoded signal.
 */
double sr439_obj_extended_info_rl_obj_arel_lon_decode(uint16_t value);

/**
 * Check that given signal is in allowed range.
 *
 * @param[in] value Signal to check.
 *
 * @return true if in range, false otherwise.
 */
bool sr439_obj_extended_info_rl_obj_arel_lon_is_in_range(uint16_t value);

/**
 * Encode given signal by applying scaling and offset.
 *
 * @param[in] value Signal to encode.
 *
 * @return Encoded signal.
 */
uint16_t sr439_obj_extended_info_rl_obj_arel_lat_encode(double value);

/**
 * Decode given signal by applying scaling and offset.
 *
 * @param[in] value Signal to decode.
 *
 * @return Decoded signal.
 */
double sr439_obj_extended_info_rl_obj_arel_lat_decode(uint16_t value);

/**
 * Check that given signal is in allowed range.
 *
 * @param[in] value Signal to check.
 *
 * @return true if in range, false otherwise.
 */
bool sr439_obj_extended_info_rl_obj_arel_lat_is_in_range(uint16_t value);

/**
 * Encode given signal by applying scaling and offset.
 *
 * @param[in] value Signal to encode.
 *
 * @return Encoded signal.
 */
uint8_t sr439_obj_extended_info_rl_obj_class_encode(double value);

/**
 * Decode given signal by applying scaling and offset.
 *
 * @param[in] value Signal to decode.
 *
 * @return Decoded signal.
 */
double sr439_obj_extended_info_rl_obj_class_decode(uint8_t value);

/**
 * Check that given signal is in allowed range.
 *
 * @param[in] value Signal to check.
 *
 * @return true if in range, false otherwise.
 */
bool sr439_obj_extended_info_rl_obj_class_is_in_range(uint8_t value);

/**
 * Encode given signal by applying scaling and offset.
 *
 * @param[in] value Signal to encode.
 *
 * @return Encoded signal.
 */
uint16_t sr439_obj_extended_info_rl_obj_orien_angle_encode(double value);

/**
 * Decode given signal by applying scaling and offset.
 *
 * @param[in] value Signal to decode.
 *
 * @return Decoded signal.
 */
double sr439_obj_extended_info_rl_obj_orien_angle_decode(uint16_t value);

/**
 * Check that given signal is in allowed range.
 *
 * @param[in] value Signal to check.
 *
 * @return true if in range, false otherwise.
 */
bool sr439_obj_extended_info_rl_obj_orien_angle_is_in_range(uint16_t value);

/**
 * Encode given signal by applying scaling and offset.
 *
 * @param[in] value Signal to encode.
 *
 * @return Encoded signal.
 */
uint8_t sr439_obj_extended_info_rl_obj_width_encode(double value);

/**
 * Decode given signal by applying scaling and offset.
 *
 * @param[in] value Signal to decode.
 *
 * @return Decoded signal.
 */
double sr439_obj_extended_info_rl_obj_width_decode(uint8_t value);

/**
 * Check that given signal is in allowed range.
 *
 * @param[in] value Signal to check.
 *
 * @return true if in range, false otherwise.
 */
bool sr439_obj_extended_info_rl_obj_width_is_in_range(uint8_t value);

/**
 * Encode given signal by applying scaling and offset.
 *
 * @param[in] value Signal to encode.
 *
 * @return Encoded signal.
 */
uint8_t sr439_obj_extended_info_rl_obj_length_encode(double value);

/**
 * Decode given signal by applying scaling and offset.
 *
 * @param[in] value Signal to decode.
 *
 * @return Decoded signal.
 */
double sr439_obj_extended_info_rl_obj_length_decode(uint8_t value);

/**
 * Check that given signal is in allowed range.
 *
 * @param[in] value Signal to check.
 *
 * @return true if in range, false otherwise.
 */
bool sr439_obj_extended_info_rl_obj_length_is_in_range(uint8_t value);

/**
 * Encode given signal by applying scaling and offset.
 *
 * @param[in] value Signal to encode.
 *
 * @return Encoded signal.
 */
uint8_t sr439_obj_extended_info_rl_obj_height_encode(double value);

/**
 * Decode given signal by applying scaling and offset.
 *
 * @param[in] value Signal to decode.
 *
 * @return Decoded signal.
 */
double sr439_obj_extended_info_rl_obj_height_decode(uint8_t value);

/**
 * Check that given signal is in allowed range.
 *
 * @param[in] value Signal to check.
 *
 * @return true if in range, false otherwise.
 */
bool sr439_obj_extended_info_rl_obj_height_is_in_range(uint8_t value);

/**
 * Pack message Obj_Quality_Info_RL.
 *
 * @param[out] dst_p Buffer to pack the message into.
 * @param[in] src_p Data to pack.
 * @param[in] size Size of dst_p.
 *
 * @return Size of packed data, or negative error code.
 */
int sr439_obj_quality_info_rl_pack(
    uint8_t *dst_p,
    const struct sr439_obj_quality_info_rl_t *src_p,
    size_t size);

/**
 * Unpack message Obj_Quality_Info_RL.
 *
 * @param[out] dst_p Object to unpack the message into.
 * @param[in] src_p Message to unpack.
 * @param[in] size Size of src_p.
 *
 * @return zero(0) or negative error code.
 */
int sr439_obj_quality_info_rl_unpack(
    struct sr439_obj_quality_info_rl_t *dst_p,
    const uint8_t *src_p,
    size_t size);

/**
 * Init message fields to default values from Obj_Quality_Info_RL.
 *
 * @param[in] msg_p Message to init.
 *
 * @return zero(0) on success or (-1) in case of nullptr argument.
 */
int sr439_obj_quality_info_rl_init(struct sr439_obj_quality_info_rl_t *msg_p);

/**
 * Encode given signal by applying scaling and offset.
 *
 * @param[in] value Signal to encode.
 *
 * @return Encoded signal.
 */
uint8_t sr439_obj_quality_info_rl_obj_id_encode(double value);

/**
 * Decode given signal by applying scaling and offset.
 *
 * @param[in] value Signal to decode.
 *
 * @return Decoded signal.
 */
double sr439_obj_quality_info_rl_obj_id_decode(uint8_t value);

/**
 * Check that given signal is in allowed range.
 *
 * @param[in] value Signal to check.
 *
 * @return true if in range, false otherwise.
 */
bool sr439_obj_quality_info_rl_obj_id_is_in_range(uint8_t value);

/**
 * Encode given signal by applying scaling and offset.
 *
 * @param[in] value Signal to encode.
 *
 * @return Encoded signal.
 */
uint8_t sr439_obj_quality_info_rl_obj_dist_lon_rms_encode(double value);

/**
 * Decode given signal by applying scaling and offset.
 *
 * @param[in] value Signal to decode.
 *
 * @return Decoded signal.
 */
double sr439_obj_quality_info_rl_obj_dist_lon_rms_decode(uint8_t value);

/**
 * Check that given signal is in allowed range.
 *
 * @param[in] value Signal to check.
 *
 * @return true if in range, false otherwise.
 */
bool sr439_obj_quality_info_rl_obj_dist_lon_rms_is_in_range(uint8_t value);

/**
 * Encode given signal by applying scaling and offset.
 *
 * @param[in] value Signal to encode.
 *
 * @return Encoded signal.
 */
uint8_t sr439_obj_quality_info_rl_obj_dist_lat_rms_encode(double value);

/**
 * Decode given signal by applying scaling and offset.
 *
 * @param[in] value Signal to decode.
 *
 * @return Decoded signal.
 */
double sr439_obj_quality_info_rl_obj_dist_lat_rms_decode(uint8_t value);

/**
 * Check that given signal is in allowed range.
 *
 * @param[in] value Signal to check.
 *
 * @return true if in range, false otherwise.
 */
bool sr439_obj_quality_info_rl_obj_dist_lat_rms_is_in_range(uint8_t value);

/**
 * Encode given signal by applying scaling and offset.
 *
 * @param[in] value Signal to encode.
 *
 * @return Encoded signal.
 */
uint8_t sr439_obj_quality_info_rl_obj_vel_lon_rms_encode(double value);

/**
 * Decode given signal by applying scaling and offset.
 *
 * @param[in] value Signal to decode.
 *
 * @return Decoded signal.
 */
double sr439_obj_quality_info_rl_obj_vel_lon_rms_decode(uint8_t value);

/**
 * Check that given signal is in allowed range.
 *
 * @param[in] value Signal to check.
 *
 * @return true if in range, false otherwise.
 */
bool sr439_obj_quality_info_rl_obj_vel_lon_rms_is_in_range(uint8_t value);

/**
 * Encode given signal by applying scaling and offset.
 *
 * @param[in] value Signal to encode.
 *
 * @return Encoded signal.
 */
uint8_t sr439_obj_quality_info_rl_obj_vel_lat_rms_encode(double value);

/**
 * Decode given signal by applying scaling and offset.
 *
 * @param[in] value Signal to decode.
 *
 * @return Decoded signal.
 */
double sr439_obj_quality_info_rl_obj_vel_lat_rms_decode(uint8_t value);

/**
 * Check that given signal is in allowed range.
 *
 * @param[in] value Signal to check.
 *
 * @return true if in range, false otherwise.
 */
bool sr439_obj_quality_info_rl_obj_vel_lat_rms_is_in_range(uint8_t value);

/**
 * Encode given signal by applying scaling and offset.
 *
 * @param[in] value Signal to encode.
 *
 * @return Encoded signal.
 */
uint8_t sr439_obj_quality_info_rl_obj_acc_lon_rms_encode(double value);

/**
 * Decode given signal by applying scaling and offset.
 *
 * @param[in] value Signal to decode.
 *
 * @return Decoded signal.
 */
double sr439_obj_quality_info_rl_obj_acc_lon_rms_decode(uint8_t value);

/**
 * Check that given signal is in allowed range.
 *
 * @param[in] value Signal to check.
 *
 * @return true if in range, false otherwise.
 */
bool sr439_obj_quality_info_rl_obj_acc_lon_rms_is_in_range(uint8_t value);

/**
 * Encode given signal by applying scaling and offset.
 *
 * @param[in] value Signal to encode.
 *
 * @return Encoded signal.
 */
uint8_t sr439_obj_quality_info_rl_obj_acc_lat_rms_encode(double value);

/**
 * Decode given signal by applying scaling and offset.
 *
 * @param[in] value Signal to decode.
 *
 * @return Decoded signal.
 */
double sr439_obj_quality_info_rl_obj_acc_lat_rms_decode(uint8_t value);

/**
 * Check that given signal is in allowed range.
 *
 * @param[in] value Signal to check.
 *
 * @return true if in range, false otherwise.
 */
bool sr439_obj_quality_info_rl_obj_acc_lat_rms_is_in_range(uint8_t value);

/**
 * Encode given signal by applying scaling and offset.
 *
 * @param[in] value Signal to encode.
 *
 * @return Encoded signal.
 */
uint8_t sr439_obj_quality_info_rl_obj_cipv_encode(double value);

/**
 * Decode given signal by applying scaling and offset.
 *
 * @param[in] value Signal to decode.
 *
 * @return Decoded signal.
 */
double sr439_obj_quality_info_rl_obj_cipv_decode(uint8_t value);

/**
 * Check that given signal is in allowed range.
 *
 * @param[in] value Signal to check.
 *
 * @return true if in range, false otherwise.
 */
bool sr439_obj_quality_info_rl_obj_cipv_is_in_range(uint8_t value);

/**
 * Encode given signal by applying scaling and offset.
 *
 * @param[in] value Signal to encode.
 *
 * @return Encoded signal.
 */
uint8_t sr439_obj_quality_info_rl_obj_prob_of_class_encode(double value);

/**
 * Decode given signal by applying scaling and offset.
 *
 * @param[in] value Signal to decode.
 *
 * @return Decoded signal.
 */
double sr439_obj_quality_info_rl_obj_prob_of_class_decode(uint8_t value);

/**
 * Check that given signal is in allowed range.
 *
 * @param[in] value Signal to check.
 *
 * @return true if in range, false otherwise.
 */
bool sr439_obj_quality_info_rl_obj_prob_of_class_is_in_range(uint8_t value);

/**
 * Encode given signal by applying scaling and offset.
 *
 * @param[in] value Signal to encode.
 *
 * @return Encoded signal.
 */
uint8_t sr439_obj_quality_info_rl_obj_prob_of_exist_encode(double value);

/**
 * Decode given signal by applying scaling and offset.
 *
 * @param[in] value Signal to decode.
 *
 * @return Decoded signal.
 */
double sr439_obj_quality_info_rl_obj_prob_of_exist_decode(uint8_t value);

/**
 * Check that given signal is in allowed range.
 *
 * @param[in] value Signal to check.
 *
 * @return true if in range, false otherwise.
 */
bool sr439_obj_quality_info_rl_obj_prob_of_exist_is_in_range(uint8_t value);

/**
 * Encode given signal by applying scaling and offset.
 *
 * @param[in] value Signal to encode.
 *
 * @return Encoded signal.
 */
uint8_t sr439_obj_quality_info_rl_obj_meas_state_encode(double value);

/**
 * Decode given signal by applying scaling and offset.
 *
 * @param[in] value Signal to decode.
 *
 * @return Decoded signal.
 */
double sr439_obj_quality_info_rl_obj_meas_state_decode(uint8_t value);

/**
 * Check that given signal is in allowed range.
 *
 * @param[in] value Signal to check.
 *
 * @return true if in range, false otherwise.
 */
bool sr439_obj_quality_info_rl_obj_meas_state_is_in_range(uint8_t value);

/**
 * Pack message Radar_Rear_ADAS.
 *
 * @param[out] dst_p Buffer to pack the message into.
 * @param[in] src_p Data to pack.
 * @param[in] size Size of dst_p.
 *
 * @return Size of packed data, or negative error code.
 */
int sr439_radar_rear_adas_pack(
    uint8_t *dst_p,
    const struct sr439_radar_rear_adas_t *src_p,
    size_t size);

/**
 * Unpack message Radar_Rear_ADAS.
 *
 * @param[out] dst_p Object to unpack the message into.
 * @param[in] src_p Message to unpack.
 * @param[in] size Size of src_p.
 *
 * @return zero(0) or negative error code.
 */
int sr439_radar_rear_adas_unpack(
    struct sr439_radar_rear_adas_t *dst_p,
    const uint8_t *src_p,
    size_t size);

/**
 * Init message fields to default values from Radar_Rear_ADAS.
 *
 * @param[in] msg_p Message to init.
 *
 * @return zero(0) on success or (-1) in case of nullptr argument.
 */
int sr439_radar_rear_adas_init(struct sr439_radar_rear_adas_t *msg_p);

/**
 * Encode given signal by applying scaling and offset.
 *
 * @param[in] value Signal to encode.
 *
 * @return Encoded signal.
 */
uint8_t sr439_radar_rear_adas_adas_bsd_l_flg_encode(double value);

/**
 * Decode given signal by applying scaling and offset.
 *
 * @param[in] value Signal to decode.
 *
 * @return Decoded signal.
 */
double sr439_radar_rear_adas_adas_bsd_l_flg_decode(uint8_t value);

/**
 * Check that given signal is in allowed range.
 *
 * @param[in] value Signal to check.
 *
 * @return true if in range, false otherwise.
 */
bool sr439_radar_rear_adas_adas_bsd_l_flg_is_in_range(uint8_t value);

/**
 * Encode given signal by applying scaling and offset.
 *
 * @param[in] value Signal to encode.
 *
 * @return Encoded signal.
 */
uint8_t sr439_radar_rear_adas_adas_bsd_r_flg_encode(double value);

/**
 * Decode given signal by applying scaling and offset.
 *
 * @param[in] value Signal to decode.
 *
 * @return Decoded signal.
 */
double sr439_radar_rear_adas_adas_bsd_r_flg_decode(uint8_t value);

/**
 * Check that given signal is in allowed range.
 *
 * @param[in] value Signal to check.
 *
 * @return true if in range, false otherwise.
 */
bool sr439_radar_rear_adas_adas_bsd_r_flg_is_in_range(uint8_t value);

/**
 * Encode given signal by applying scaling and offset.
 *
 * @param[in] value Signal to encode.
 *
 * @return Encoded signal.
 */
uint8_t sr439_radar_rear_adas_adas_dow_l_flg_encode(double value);

/**
 * Decode given signal by applying scaling and offset.
 *
 * @param[in] value Signal to decode.
 *
 * @return Decoded signal.
 */
double sr439_radar_rear_adas_adas_dow_l_flg_decode(uint8_t value);

/**
 * Check that given signal is in allowed range.
 *
 * @param[in] value Signal to check.
 *
 * @return true if in range, false otherwise.
 */
bool sr439_radar_rear_adas_adas_dow_l_flg_is_in_range(uint8_t value);

/**
 * Encode given signal by applying scaling and offset.
 *
 * @param[in] value Signal to encode.
 *
 * @return Encoded signal.
 */
uint8_t sr439_radar_rear_adas_adas_dow_r_flg_encode(double value);

/**
 * Decode given signal by applying scaling and offset.
 *
 * @param[in] value Signal to decode.
 *
 * @return Decoded signal.
 */
double sr439_radar_rear_adas_adas_dow_r_flg_decode(uint8_t value);

/**
 * Check that given signal is in allowed range.
 *
 * @param[in] value Signal to check.
 *
 * @return true if in range, false otherwise.
 */
bool sr439_radar_rear_adas_adas_dow_r_flg_is_in_range(uint8_t value);

/**
 * Encode given signal by applying scaling and offset.
 *
 * @param[in] value Signal to encode.
 *
 * @return Encoded signal.
 */
uint8_t sr439_radar_rear_adas_adas_lca_l_flg_encode(double value);

/**
 * Decode given signal by applying scaling and offset.
 *
 * @param[in] value Signal to decode.
 *
 * @return Decoded signal.
 */
double sr439_radar_rear_adas_adas_lca_l_flg_decode(uint8_t value);

/**
 * Check that given signal is in allowed range.
 *
 * @param[in] value Signal to check.
 *
 * @return true if in range, false otherwise.
 */
bool sr439_radar_rear_adas_adas_lca_l_flg_is_in_range(uint8_t value);

/**
 * Encode given signal by applying scaling and offset.
 *
 * @param[in] value Signal to encode.
 *
 * @return Encoded signal.
 */
uint8_t sr439_radar_rear_adas_adas_lca_r_flg_encode(double value);

/**
 * Decode given signal by applying scaling and offset.
 *
 * @param[in] value Signal to decode.
 *
 * @return Decoded signal.
 */
double sr439_radar_rear_adas_adas_lca_r_flg_decode(uint8_t value);

/**
 * Check that given signal is in allowed range.
 *
 * @param[in] value Signal to check.
 *
 * @return true if in range, false otherwise.
 */
bool sr439_radar_rear_adas_adas_lca_r_flg_is_in_range(uint8_t value);

/**
 * Encode given signal by applying scaling and offset.
 *
 * @param[in] value Signal to encode.
 *
 * @return Encoded signal.
 */
uint8_t sr439_radar_rear_adas_adas_rcta_l_flg_encode(double value);

/**
 * Decode given signal by applying scaling and offset.
 *
 * @param[in] value Signal to decode.
 *
 * @return Decoded signal.
 */
double sr439_radar_rear_adas_adas_rcta_l_flg_decode(uint8_t value);

/**
 * Check that given signal is in allowed range.
 *
 * @param[in] value Signal to check.
 *
 * @return true if in range, false otherwise.
 */
bool sr439_radar_rear_adas_adas_rcta_l_flg_is_in_range(uint8_t value);

/**
 * Encode given signal by applying scaling and offset.
 *
 * @param[in] value Signal to encode.
 *
 * @return Encoded signal.
 */
uint8_t sr439_radar_rear_adas_adas_rcta_r_flg_encode(double value);

/**
 * Decode given signal by applying scaling and offset.
 *
 * @param[in] value Signal to decode.
 *
 * @return Decoded signal.
 */
double sr439_radar_rear_adas_adas_rcta_r_flg_decode(uint8_t value);

/**
 * Check that given signal is in allowed range.
 *
 * @param[in] value Signal to check.
 *
 * @return true if in range, false otherwise.
 */
bool sr439_radar_rear_adas_adas_rcta_r_flg_is_in_range(uint8_t value);

/**
 * Encode given signal by applying scaling and offset.
 *
 * @param[in] value Signal to encode.
 *
 * @return Encoded signal.
 */
uint8_t sr439_radar_rear_adas_adas_rctb_l_flg_encode(double value);

/**
 * Decode given signal by applying scaling and offset.
 *
 * @param[in] value Signal to decode.
 *
 * @return Decoded signal.
 */
double sr439_radar_rear_adas_adas_rctb_l_flg_decode(uint8_t value);

/**
 * Check that given signal is in allowed range.
 *
 * @param[in] value Signal to check.
 *
 * @return true if in range, false otherwise.
 */
bool sr439_radar_rear_adas_adas_rctb_l_flg_is_in_range(uint8_t value);

/**
 * Encode given signal by applying scaling and offset.
 *
 * @param[in] value Signal to encode.
 *
 * @return Encoded signal.
 */
uint8_t sr439_radar_rear_adas_adas_rctb_r_flg_encode(double value);

/**
 * Decode given signal by applying scaling and offset.
 *
 * @param[in] value Signal to decode.
 *
 * @return Decoded signal.
 */
double sr439_radar_rear_adas_adas_rctb_r_flg_decode(uint8_t value);

/**
 * Check that given signal is in allowed range.
 *
 * @param[in] value Signal to check.
 *
 * @return true if in range, false otherwise.
 */
bool sr439_radar_rear_adas_adas_rctb_r_flg_is_in_range(uint8_t value);

/**
 * Encode given signal by applying scaling and offset.
 *
 * @param[in] value Signal to encode.
 *
 * @return Encoded signal.
 */
uint8_t sr439_radar_rear_adas_adas_fcta_l_flg_encode(double value);

/**
 * Decode given signal by applying scaling and offset.
 *
 * @param[in] value Signal to decode.
 *
 * @return Decoded signal.
 */
double sr439_radar_rear_adas_adas_fcta_l_flg_decode(uint8_t value);

/**
 * Check that given signal is in allowed range.
 *
 * @param[in] value Signal to check.
 *
 * @return true if in range, false otherwise.
 */
bool sr439_radar_rear_adas_adas_fcta_l_flg_is_in_range(uint8_t value);

/**
 * Encode given signal by applying scaling and offset.
 *
 * @param[in] value Signal to encode.
 *
 * @return Encoded signal.
 */
uint8_t sr439_radar_rear_adas_adas_fcta_r_flg_encode(double value);

/**
 * Decode given signal by applying scaling and offset.
 *
 * @param[in] value Signal to decode.
 *
 * @return Decoded signal.
 */
double sr439_radar_rear_adas_adas_fcta_r_flg_decode(uint8_t value);

/**
 * Check that given signal is in allowed range.
 *
 * @param[in] value Signal to check.
 *
 * @return true if in range, false otherwise.
 */
bool sr439_radar_rear_adas_adas_fcta_r_flg_is_in_range(uint8_t value);

/**
 * Encode given signal by applying scaling and offset.
 *
 * @param[in] value Signal to encode.
 *
 * @return Encoded signal.
 */
uint8_t sr439_radar_rear_adas_adas_fctb_l_flg_encode(double value);

/**
 * Decode given signal by applying scaling and offset.
 *
 * @param[in] value Signal to decode.
 *
 * @return Decoded signal.
 */
double sr439_radar_rear_adas_adas_fctb_l_flg_decode(uint8_t value);

/**
 * Check that given signal is in allowed range.
 *
 * @param[in] value Signal to check.
 *
 * @return true if in range, false otherwise.
 */
bool sr439_radar_rear_adas_adas_fctb_l_flg_is_in_range(uint8_t value);

/**
 * Encode given signal by applying scaling and offset.
 *
 * @param[in] value Signal to encode.
 *
 * @return Encoded signal.
 */
uint8_t sr439_radar_rear_adas_adas_fctb_r_flg_encode(double value);

/**
 * Decode given signal by applying scaling and offset.
 *
 * @param[in] value Signal to decode.
 *
 * @return Decoded signal.
 */
double sr439_radar_rear_adas_adas_fctb_r_flg_decode(uint8_t value);

/**
 * Check that given signal is in allowed range.
 *
 * @param[in] value Signal to check.
 *
 * @return true if in range, false otherwise.
 */
bool sr439_radar_rear_adas_adas_fctb_r_flg_is_in_range(uint8_t value);

/**
 * Encode given signal by applying scaling and offset.
 *
 * @param[in] value Signal to encode.
 *
 * @return Encoded signal.
 */
uint8_t sr439_radar_rear_adas_adas_fcw_flg_encode(double value);

/**
 * Decode given signal by applying scaling and offset.
 *
 * @param[in] value Signal to decode.
 *
 * @return Decoded signal.
 */
double sr439_radar_rear_adas_adas_fcw_flg_decode(uint8_t value);

/**
 * Check that given signal is in allowed range.
 *
 * @param[in] value Signal to check.
 *
 * @return true if in range, false otherwise.
 */
bool sr439_radar_rear_adas_adas_fcw_flg_is_in_range(uint8_t value);

/**
 * Encode given signal by applying scaling and offset.
 *
 * @param[in] value Signal to encode.
 *
 * @return Encoded signal.
 */
uint8_t sr439_radar_rear_adas_adas_rcw_flg_encode(double value);

/**
 * Decode given signal by applying scaling and offset.
 *
 * @param[in] value Signal to decode.
 *
 * @return Decoded signal.
 */
double sr439_radar_rear_adas_adas_rcw_flg_decode(uint8_t value);

/**
 * Check that given signal is in allowed range.
 *
 * @param[in] value Signal to check.
 *
 * @return true if in range, false otherwise.
 */
bool sr439_radar_rear_adas_adas_rcw_flg_is_in_range(uint8_t value);

/**
 * Encode given signal by applying scaling and offset.
 *
 * @param[in] value Signal to encode.
 *
 * @return Encoded signal.
 */
uint8_t sr439_radar_rear_adas_adas_bsd_l_w_encode(double value);

/**
 * Decode given signal by applying scaling and offset.
 *
 * @param[in] value Signal to decode.
 *
 * @return Decoded signal.
 */
double sr439_radar_rear_adas_adas_bsd_l_w_decode(uint8_t value);

/**
 * Check that given signal is in allowed range.
 *
 * @param[in] value Signal to check.
 *
 * @return true if in range, false otherwise.
 */
bool sr439_radar_rear_adas_adas_bsd_l_w_is_in_range(uint8_t value);

/**
 * Encode given signal by applying scaling and offset.
 *
 * @param[in] value Signal to encode.
 *
 * @return Encoded signal.
 */
uint8_t sr439_radar_rear_adas_adas_bsd_r_w_encode(double value);

/**
 * Decode given signal by applying scaling and offset.
 *
 * @param[in] value Signal to decode.
 *
 * @return Decoded signal.
 */
double sr439_radar_rear_adas_adas_bsd_r_w_decode(uint8_t value);

/**
 * Check that given signal is in allowed range.
 *
 * @param[in] value Signal to check.
 *
 * @return true if in range, false otherwise.
 */
bool sr439_radar_rear_adas_adas_bsd_r_w_is_in_range(uint8_t value);

/**
 * Encode given signal by applying scaling and offset.
 *
 * @param[in] value Signal to encode.
 *
 * @return Encoded signal.
 */
uint8_t sr439_radar_rear_adas_adas_lca_l_w_encode(double value);

/**
 * Decode given signal by applying scaling and offset.
 *
 * @param[in] value Signal to decode.
 *
 * @return Decoded signal.
 */
double sr439_radar_rear_adas_adas_lca_l_w_decode(uint8_t value);

/**
 * Check that given signal is in allowed range.
 *
 * @param[in] value Signal to check.
 *
 * @return true if in range, false otherwise.
 */
bool sr439_radar_rear_adas_adas_lca_l_w_is_in_range(uint8_t value);

/**
 * Encode given signal by applying scaling and offset.
 *
 * @param[in] value Signal to encode.
 *
 * @return Encoded signal.
 */
uint8_t sr439_radar_rear_adas_adas_lca_r_w_encode(double value);

/**
 * Decode given signal by applying scaling and offset.
 *
 * @param[in] value Signal to decode.
 *
 * @return Decoded signal.
 */
double sr439_radar_rear_adas_adas_lca_r_w_decode(uint8_t value);

/**
 * Check that given signal is in allowed range.
 *
 * @param[in] value Signal to check.
 *
 * @return true if in range, false otherwise.
 */
bool sr439_radar_rear_adas_adas_lca_r_w_is_in_range(uint8_t value);

/**
 * Encode given signal by applying scaling and offset.
 *
 * @param[in] value Signal to encode.
 *
 * @return Encoded signal.
 */
uint8_t sr439_radar_rear_adas_adas_dow_l_w_encode(double value);

/**
 * Decode given signal by applying scaling and offset.
 *
 * @param[in] value Signal to decode.
 *
 * @return Decoded signal.
 */
double sr439_radar_rear_adas_adas_dow_l_w_decode(uint8_t value);

/**
 * Check that given signal is in allowed range.
 *
 * @param[in] value Signal to check.
 *
 * @return true if in range, false otherwise.
 */
bool sr439_radar_rear_adas_adas_dow_l_w_is_in_range(uint8_t value);

/**
 * Encode given signal by applying scaling and offset.
 *
 * @param[in] value Signal to encode.
 *
 * @return Encoded signal.
 */
uint8_t sr439_radar_rear_adas_adas_dow_r_w_encode(double value);

/**
 * Decode given signal by applying scaling and offset.
 *
 * @param[in] value Signal to decode.
 *
 * @return Decoded signal.
 */
double sr439_radar_rear_adas_adas_dow_r_w_decode(uint8_t value);

/**
 * Check that given signal is in allowed range.
 *
 * @param[in] value Signal to check.
 *
 * @return true if in range, false otherwise.
 */
bool sr439_radar_rear_adas_adas_dow_r_w_is_in_range(uint8_t value);

/**
 * Encode given signal by applying scaling and offset.
 *
 * @param[in] value Signal to encode.
 *
 * @return Encoded signal.
 */
uint8_t sr439_radar_rear_adas_adas_rcta_l_w_encode(double value);

/**
 * Decode given signal by applying scaling and offset.
 *
 * @param[in] value Signal to decode.
 *
 * @return Decoded signal.
 */
double sr439_radar_rear_adas_adas_rcta_l_w_decode(uint8_t value);

/**
 * Check that given signal is in allowed range.
 *
 * @param[in] value Signal to check.
 *
 * @return true if in range, false otherwise.
 */
bool sr439_radar_rear_adas_adas_rcta_l_w_is_in_range(uint8_t value);

/**
 * Encode given signal by applying scaling and offset.
 *
 * @param[in] value Signal to encode.
 *
 * @return Encoded signal.
 */
uint8_t sr439_radar_rear_adas_adas_rcta_r_w_encode(double value);

/**
 * Decode given signal by applying scaling and offset.
 *
 * @param[in] value Signal to decode.
 *
 * @return Decoded signal.
 */
double sr439_radar_rear_adas_adas_rcta_r_w_decode(uint8_t value);

/**
 * Check that given signal is in allowed range.
 *
 * @param[in] value Signal to check.
 *
 * @return true if in range, false otherwise.
 */
bool sr439_radar_rear_adas_adas_rcta_r_w_is_in_range(uint8_t value);

/**
 * Encode given signal by applying scaling and offset.
 *
 * @param[in] value Signal to encode.
 *
 * @return Encoded signal.
 */
uint8_t sr439_radar_rear_adas_adas_rctb_l_w_encode(double value);

/**
 * Decode given signal by applying scaling and offset.
 *
 * @param[in] value Signal to decode.
 *
 * @return Decoded signal.
 */
double sr439_radar_rear_adas_adas_rctb_l_w_decode(uint8_t value);

/**
 * Check that given signal is in allowed range.
 *
 * @param[in] value Signal to check.
 *
 * @return true if in range, false otherwise.
 */
bool sr439_radar_rear_adas_adas_rctb_l_w_is_in_range(uint8_t value);

/**
 * Encode given signal by applying scaling and offset.
 *
 * @param[in] value Signal to encode.
 *
 * @return Encoded signal.
 */
uint8_t sr439_radar_rear_adas_adas_rctb_r_w_encode(double value);

/**
 * Decode given signal by applying scaling and offset.
 *
 * @param[in] value Signal to decode.
 *
 * @return Decoded signal.
 */
double sr439_radar_rear_adas_adas_rctb_r_w_decode(uint8_t value);

/**
 * Check that given signal is in allowed range.
 *
 * @param[in] value Signal to check.
 *
 * @return true if in range, false otherwise.
 */
bool sr439_radar_rear_adas_adas_rctb_r_w_is_in_range(uint8_t value);

/**
 * Encode given signal by applying scaling and offset.
 *
 * @param[in] value Signal to encode.
 *
 * @return Encoded signal.
 */
uint8_t sr439_radar_rear_adas_adas_fcta_l_w_encode(double value);

/**
 * Decode given signal by applying scaling and offset.
 *
 * @param[in] value Signal to decode.
 *
 * @return Decoded signal.
 */
double sr439_radar_rear_adas_adas_fcta_l_w_decode(uint8_t value);

/**
 * Check that given signal is in allowed range.
 *
 * @param[in] value Signal to check.
 *
 * @return true if in range, false otherwise.
 */
bool sr439_radar_rear_adas_adas_fcta_l_w_is_in_range(uint8_t value);

/**
 * Encode given signal by applying scaling and offset.
 *
 * @param[in] value Signal to encode.
 *
 * @return Encoded signal.
 */
uint8_t sr439_radar_rear_adas_adas_fcta_r_w_encode(double value);

/**
 * Decode given signal by applying scaling and offset.
 *
 * @param[in] value Signal to decode.
 *
 * @return Decoded signal.
 */
double sr439_radar_rear_adas_adas_fcta_r_w_decode(uint8_t value);

/**
 * Check that given signal is in allowed range.
 *
 * @param[in] value Signal to check.
 *
 * @return true if in range, false otherwise.
 */
bool sr439_radar_rear_adas_adas_fcta_r_w_is_in_range(uint8_t value);

/**
 * Encode given signal by applying scaling and offset.
 *
 * @param[in] value Signal to encode.
 *
 * @return Encoded signal.
 */
uint8_t sr439_radar_rear_adas_adas_fctb_l_w_encode(double value);

/**
 * Decode given signal by applying scaling and offset.
 *
 * @param[in] value Signal to decode.
 *
 * @return Decoded signal.
 */
double sr439_radar_rear_adas_adas_fctb_l_w_decode(uint8_t value);

/**
 * Check that given signal is in allowed range.
 *
 * @param[in] value Signal to check.
 *
 * @return true if in range, false otherwise.
 */
bool sr439_radar_rear_adas_adas_fctb_l_w_is_in_range(uint8_t value);

/**
 * Encode given signal by applying scaling and offset.
 *
 * @param[in] value Signal to encode.
 *
 * @return Encoded signal.
 */
uint8_t sr439_radar_rear_adas_adas_fctb_r_w_encode(double value);

/**
 * Decode given signal by applying scaling and offset.
 *
 * @param[in] value Signal to decode.
 *
 * @return Decoded signal.
 */
double sr439_radar_rear_adas_adas_fctb_r_w_decode(uint8_t value);

/**
 * Check that given signal is in allowed range.
 *
 * @param[in] value Signal to check.
 *
 * @return true if in range, false otherwise.
 */
bool sr439_radar_rear_adas_adas_fctb_r_w_is_in_range(uint8_t value);

/**
 * Encode given signal by applying scaling and offset.
 *
 * @param[in] value Signal to encode.
 *
 * @return Encoded signal.
 */
uint8_t sr439_radar_rear_adas_adas_fcw_w_encode(double value);

/**
 * Decode given signal by applying scaling and offset.
 *
 * @param[in] value Signal to decode.
 *
 * @return Decoded signal.
 */
double sr439_radar_rear_adas_adas_fcw_w_decode(uint8_t value);

/**
 * Check that given signal is in allowed range.
 *
 * @param[in] value Signal to check.
 *
 * @return true if in range, false otherwise.
 */
bool sr439_radar_rear_adas_adas_fcw_w_is_in_range(uint8_t value);

/**
 * Encode given signal by applying scaling and offset.
 *
 * @param[in] value Signal to encode.
 *
 * @return Encoded signal.
 */
uint8_t sr439_radar_rear_adas_adas_rcw_w_encode(double value);

/**
 * Decode given signal by applying scaling and offset.
 *
 * @param[in] value Signal to decode.
 *
 * @return Decoded signal.
 */
double sr439_radar_rear_adas_adas_rcw_w_decode(uint8_t value);

/**
 * Check that given signal is in allowed range.
 *
 * @param[in] value Signal to check.
 *
 * @return true if in range, false otherwise.
 */
bool sr439_radar_rear_adas_adas_rcw_w_is_in_range(uint8_t value);

/**
 * Encode given signal by applying scaling and offset.
 *
 * @param[in] value Signal to encode.
 *
 * @return Encoded signal.
 */
int16_t sr439_radar_rear_adas_adas_time_diff_encode(double value);

/**
 * Decode given signal by applying scaling and offset.
 *
 * @param[in] value Signal to decode.
 *
 * @return Decoded signal.
 */
double sr439_radar_rear_adas_adas_time_diff_decode(int16_t value);

/**
 * Check that given signal is in allowed range.
 *
 * @param[in] value Signal to check.
 *
 * @return true if in range, false otherwise.
 */
bool sr439_radar_rear_adas_adas_time_diff_is_in_range(int16_t value);

/**
 * Pack message Obj_General_Info_RL.
 *
 * @param[out] dst_p Buffer to pack the message into.
 * @param[in] src_p Data to pack.
 * @param[in] size Size of dst_p.
 *
 * @return Size of packed data, or negative error code.
 */
int sr439_obj_general_info_rl_pack(
    uint8_t *dst_p,
    const struct sr439_obj_general_info_rl_t *src_p,
    size_t size);

/**
 * Unpack message Obj_General_Info_RL.
 *
 * @param[out] dst_p Object to unpack the message into.
 * @param[in] src_p Message to unpack.
 * @param[in] size Size of src_p.
 *
 * @return zero(0) or negative error code.
 */
int sr439_obj_general_info_rl_unpack(
    struct sr439_obj_general_info_rl_t *dst_p,
    const uint8_t *src_p,
    size_t size);

/**
 * Init message fields to default values from Obj_General_Info_RL.
 *
 * @param[in] msg_p Message to init.
 *
 * @return zero(0) on success or (-1) in case of nullptr argument.
 */
int sr439_obj_general_info_rl_init(struct sr439_obj_general_info_rl_t *msg_p);

/**
 * Encode given signal by applying scaling and offset.
 *
 * @param[in] value Signal to encode.
 *
 * @return Encoded signal.
 */
uint8_t sr439_obj_general_info_rl_obj_id_encode(double value);

/**
 * Decode given signal by applying scaling and offset.
 *
 * @param[in] value Signal to decode.
 *
 * @return Decoded signal.
 */
double sr439_obj_general_info_rl_obj_id_decode(uint8_t value);

/**
 * Check that given signal is in allowed range.
 *
 * @param[in] value Signal to check.
 *
 * @return true if in range, false otherwise.
 */
bool sr439_obj_general_info_rl_obj_id_is_in_range(uint8_t value);

/**
 * Encode given signal by applying scaling and offset.
 *
 * @param[in] value Signal to encode.
 *
 * @return Encoded signal.
 */
uint16_t sr439_obj_general_info_rl_obj_dist_long_encode(double value);

/**
 * Decode given signal by applying scaling and offset.
 *
 * @param[in] value Signal to decode.
 *
 * @return Decoded signal.
 */
double sr439_obj_general_info_rl_obj_dist_long_decode(uint16_t value);

/**
 * Check that given signal is in allowed range.
 *
 * @param[in] value Signal to check.
 *
 * @return true if in range, false otherwise.
 */
bool sr439_obj_general_info_rl_obj_dist_long_is_in_range(uint16_t value);

/**
 * Encode given signal by applying scaling and offset.
 *
 * @param[in] value Signal to encode.
 *
 * @return Encoded signal.
 */
uint16_t sr439_obj_general_info_rl_obj_dist_lat_encode(double value);

/**
 * Decode given signal by applying scaling and offset.
 *
 * @param[in] value Signal to decode.
 *
 * @return Decoded signal.
 */
double sr439_obj_general_info_rl_obj_dist_lat_decode(uint16_t value);

/**
 * Check that given signal is in allowed range.
 *
 * @param[in] value Signal to check.
 *
 * @return true if in range, false otherwise.
 */
bool sr439_obj_general_info_rl_obj_dist_lat_is_in_range(uint16_t value);

/**
 * Encode given signal by applying scaling and offset.
 *
 * @param[in] value Signal to encode.
 *
 * @return Encoded signal.
 */
uint8_t sr439_obj_general_info_rl_obj_dyn_prop_encode(double value);

/**
 * Decode given signal by applying scaling and offset.
 *
 * @param[in] value Signal to decode.
 *
 * @return Decoded signal.
 */
double sr439_obj_general_info_rl_obj_dyn_prop_decode(uint8_t value);

/**
 * Check that given signal is in allowed range.
 *
 * @param[in] value Signal to check.
 *
 * @return true if in range, false otherwise.
 */
bool sr439_obj_general_info_rl_obj_dyn_prop_is_in_range(uint8_t value);

/**
 * Encode given signal by applying scaling and offset.
 *
 * @param[in] value Signal to encode.
 *
 * @return Encoded signal.
 */
uint16_t sr439_obj_general_info_rl_obj_vrel_long_encode(double value);

/**
 * Decode given signal by applying scaling and offset.
 *
 * @param[in] value Signal to decode.
 *
 * @return Decoded signal.
 */
double sr439_obj_general_info_rl_obj_vrel_long_decode(uint16_t value);

/**
 * Check that given signal is in allowed range.
 *
 * @param[in] value Signal to check.
 *
 * @return true if in range, false otherwise.
 */
bool sr439_obj_general_info_rl_obj_vrel_long_is_in_range(uint16_t value);

/**
 * Encode given signal by applying scaling and offset.
 *
 * @param[in] value Signal to encode.
 *
 * @return Encoded signal.
 */
uint16_t sr439_obj_general_info_rl_obj_vrel_lat_encode(double value);

/**
 * Decode given signal by applying scaling and offset.
 *
 * @param[in] value Signal to decode.
 *
 * @return Decoded signal.
 */
double sr439_obj_general_info_rl_obj_vrel_lat_decode(uint16_t value);

/**
 * Check that given signal is in allowed range.
 *
 * @param[in] value Signal to check.
 *
 * @return true if in range, false otherwise.
 */
bool sr439_obj_general_info_rl_obj_vrel_lat_is_in_range(uint16_t value);

/**
 * Pack message Obj_0_Status_RL.
 *
 * @param[out] dst_p Buffer to pack the message into.
 * @param[in] src_p Data to pack.
 * @param[in] size Size of dst_p.
 *
 * @return Size of packed data, or negative error code.
 */
int sr439_obj_0_status_rl_pack(
    uint8_t *dst_p,
    const struct sr439_obj_0_status_rl_t *src_p,
    size_t size);

/**
 * Unpack message Obj_0_Status_RL.
 *
 * @param[out] dst_p Object to unpack the message into.
 * @param[in] src_p Message to unpack.
 * @param[in] size Size of src_p.
 *
 * @return zero(0) or negative error code.
 */
int sr439_obj_0_status_rl_unpack(
    struct sr439_obj_0_status_rl_t *dst_p,
    const uint8_t *src_p,
    size_t size);

/**
 * Init message fields to default values from Obj_0_Status_RL.
 *
 * @param[in] msg_p Message to init.
 *
 * @return zero(0) on success or (-1) in case of nullptr argument.
 */
int sr439_obj_0_status_rl_init(struct sr439_obj_0_status_rl_t *msg_p);

/**
 * Encode given signal by applying scaling and offset.
 *
 * @param[in] value Signal to encode.
 *
 * @return Encoded signal.
 */
uint8_t sr439_obj_0_status_rl_obj_nof_object_encode(double value);

/**
 * Decode given signal by applying scaling and offset.
 *
 * @param[in] value Signal to decode.
 *
 * @return Decoded signal.
 */
double sr439_obj_0_status_rl_obj_nof_object_decode(uint8_t value);

/**
 * Check that given signal is in allowed range.
 *
 * @param[in] value Signal to check.
 *
 * @return true if in range, false otherwise.
 */
bool sr439_obj_0_status_rl_obj_nof_object_is_in_range(uint8_t value);

/**
 * Encode given signal by applying scaling and offset.
 *
 * @param[in] value Signal to encode.
 *
 * @return Encoded signal.
 */
uint16_t sr439_obj_0_status_rl_obj_meas_counter_encode(double value);

/**
 * Decode given signal by applying scaling and offset.
 *
 * @param[in] value Signal to decode.
 *
 * @return Decoded signal.
 */
double sr439_obj_0_status_rl_obj_meas_counter_decode(uint16_t value);

/**
 * Check that given signal is in allowed range.
 *
 * @param[in] value Signal to check.
 *
 * @return true if in range, false otherwise.
 */
bool sr439_obj_0_status_rl_obj_meas_counter_is_in_range(uint16_t value);

/**
 * Encode given signal by applying scaling and offset.
 *
 * @param[in] value Signal to encode.
 *
 * @return Encoded signal.
 */
uint8_t sr439_obj_0_status_rl_obj_interface_version_encode(double value);

/**
 * Decode given signal by applying scaling and offset.
 *
 * @param[in] value Signal to decode.
 *
 * @return Decoded signal.
 */
double sr439_obj_0_status_rl_obj_interface_version_decode(uint8_t value);

/**
 * Check that given signal is in allowed range.
 *
 * @param[in] value Signal to check.
 *
 * @return true if in range, false otherwise.
 */
bool sr439_obj_0_status_rl_obj_interface_version_is_in_range(uint8_t value);

/**
 * Encode given signal by applying scaling and offset.
 *
 * @param[in] value Signal to encode.
 *
 * @return Encoded signal.
 */
uint8_t sr439_obj_0_status_rl_obj_bsd_warning_encode(double value);

/**
 * Decode given signal by applying scaling and offset.
 *
 * @param[in] value Signal to decode.
 *
 * @return Decoded signal.
 */
double sr439_obj_0_status_rl_obj_bsd_warning_decode(uint8_t value);

/**
 * Check that given signal is in allowed range.
 *
 * @param[in] value Signal to check.
 *
 * @return true if in range, false otherwise.
 */
bool sr439_obj_0_status_rl_obj_bsd_warning_is_in_range(uint8_t value);

/**
 * Encode given signal by applying scaling and offset.
 *
 * @param[in] value Signal to encode.
 *
 * @return Encoded signal.
 */
uint8_t sr439_obj_0_status_rl_obj_lca_warning_encode(double value);

/**
 * Decode given signal by applying scaling and offset.
 *
 * @param[in] value Signal to decode.
 *
 * @return Decoded signal.
 */
double sr439_obj_0_status_rl_obj_lca_warning_decode(uint8_t value);

/**
 * Check that given signal is in allowed range.
 *
 * @param[in] value Signal to check.
 *
 * @return true if in range, false otherwise.
 */
bool sr439_obj_0_status_rl_obj_lca_warning_is_in_range(uint8_t value);

/**
 * Encode given signal by applying scaling and offset.
 *
 * @param[in] value Signal to encode.
 *
 * @return Encoded signal.
 */
uint8_t sr439_obj_0_status_rl_obj_dow_warning_encode(double value);

/**
 * Decode given signal by applying scaling and offset.
 *
 * @param[in] value Signal to decode.
 *
 * @return Decoded signal.
 */
double sr439_obj_0_status_rl_obj_dow_warning_decode(uint8_t value);

/**
 * Check that given signal is in allowed range.
 *
 * @param[in] value Signal to check.
 *
 * @return true if in range, false otherwise.
 */
bool sr439_obj_0_status_rl_obj_dow_warning_is_in_range(uint8_t value);

/**
 * Encode given signal by applying scaling and offset.
 *
 * @param[in] value Signal to encode.
 *
 * @return Encoded signal.
 */
uint8_t sr439_obj_0_status_rl_obj_rcta_warning_encode(double value);

/**
 * Decode given signal by applying scaling and offset.
 *
 * @param[in] value Signal to decode.
 *
 * @return Decoded signal.
 */
double sr439_obj_0_status_rl_obj_rcta_warning_decode(uint8_t value);

/**
 * Check that given signal is in allowed range.
 *
 * @param[in] value Signal to check.
 *
 * @return true if in range, false otherwise.
 */
bool sr439_obj_0_status_rl_obj_rcta_warning_is_in_range(uint8_t value);

/**
 * Encode given signal by applying scaling and offset.
 *
 * @param[in] value Signal to encode.
 *
 * @return Encoded signal.
 */
uint8_t sr439_obj_0_status_rl_obj_rctb_warning_encode(double value);

/**
 * Decode given signal by applying scaling and offset.
 *
 * @param[in] value Signal to decode.
 *
 * @return Decoded signal.
 */
double sr439_obj_0_status_rl_obj_rctb_warning_decode(uint8_t value);

/**
 * Check that given signal is in allowed range.
 *
 * @param[in] value Signal to check.
 *
 * @return true if in range, false otherwise.
 */
bool sr439_obj_0_status_rl_obj_rctb_warning_is_in_range(uint8_t value);

/**
 * Encode given signal by applying scaling and offset.
 *
 * @param[in] value Signal to encode.
 *
 * @return Encoded signal.
 */
uint8_t sr439_obj_0_status_rl_obj_fcta_warning_encode(double value);

/**
 * Decode given signal by applying scaling and offset.
 *
 * @param[in] value Signal to decode.
 *
 * @return Decoded signal.
 */
double sr439_obj_0_status_rl_obj_fcta_warning_decode(uint8_t value);

/**
 * Check that given signal is in allowed range.
 *
 * @param[in] value Signal to check.
 *
 * @return true if in range, false otherwise.
 */
bool sr439_obj_0_status_rl_obj_fcta_warning_is_in_range(uint8_t value);

/**
 * Encode given signal by applying scaling and offset.
 *
 * @param[in] value Signal to encode.
 *
 * @return Encoded signal.
 */
uint8_t sr439_obj_0_status_rl_obj_fctb_warning_encode(double value);

/**
 * Decode given signal by applying scaling and offset.
 *
 * @param[in] value Signal to decode.
 *
 * @return Decoded signal.
 */
double sr439_obj_0_status_rl_obj_fctb_warning_decode(uint8_t value);

/**
 * Check that given signal is in allowed range.
 *
 * @param[in] value Signal to check.
 *
 * @return true if in range, false otherwise.
 */
bool sr439_obj_0_status_rl_obj_fctb_warning_is_in_range(uint8_t value);

/**
 * Encode given signal by applying scaling and offset.
 *
 * @param[in] value Signal to encode.
 *
 * @return Encoded signal.
 */
uint8_t sr439_obj_0_status_rl_obj_cipvid_encode(double value);

/**
 * Decode given signal by applying scaling and offset.
 *
 * @param[in] value Signal to decode.
 *
 * @return Decoded signal.
 */
double sr439_obj_0_status_rl_obj_cipvid_decode(uint8_t value);

/**
 * Check that given signal is in allowed range.
 *
 * @param[in] value Signal to check.
 *
 * @return true if in range, false otherwise.
 */
bool sr439_obj_0_status_rl_obj_cipvid_is_in_range(uint8_t value);

/**
 * Pack message Cluster_General_Information_RL.
 *
 * @param[out] dst_p Buffer to pack the message into.
 * @param[in] src_p Data to pack.
 * @param[in] size Size of dst_p.
 *
 * @return Size of packed data, or negative error code.
 */
int sr439_cluster_general_information_rl_pack(
    uint8_t *dst_p,
    const struct sr439_cluster_general_information_rl_t *src_p,
    size_t size);

/**
 * Unpack message Cluster_General_Information_RL.
 *
 * @param[out] dst_p Object to unpack the message into.
 * @param[in] src_p Message to unpack.
 * @param[in] size Size of src_p.
 *
 * @return zero(0) or negative error code.
 */
int sr439_cluster_general_information_rl_unpack(
    struct sr439_cluster_general_information_rl_t *dst_p,
    const uint8_t *src_p,
    size_t size);

/**
 * Init message fields to default values from Cluster_General_Information_RL.
 *
 * @param[in] msg_p Message to init.
 *
 * @return zero(0) on success or (-1) in case of nullptr argument.
 */
int sr439_cluster_general_information_rl_init(struct sr439_cluster_general_information_rl_t *msg_p);

/**
 * Encode given signal by applying scaling and offset.
 *
 * @param[in] value Signal to encode.
 *
 * @return Encoded signal.
 */
uint8_t sr439_cluster_general_information_rl_cluster_id_1_encode(double value);

/**
 * Decode given signal by applying scaling and offset.
 *
 * @param[in] value Signal to decode.
 *
 * @return Decoded signal.
 */
double sr439_cluster_general_information_rl_cluster_id_1_decode(uint8_t value);

/**
 * Check that given signal is in allowed range.
 *
 * @param[in] value Signal to check.
 *
 * @return true if in range, false otherwise.
 */
bool sr439_cluster_general_information_rl_cluster_id_1_is_in_range(uint8_t value);

/**
 * Encode given signal by applying scaling and offset.
 *
 * @param[in] value Signal to encode.
 *
 * @return Encoded signal.
 */
uint16_t sr439_cluster_general_information_rl_cluster_range_1_encode(double value);

/**
 * Decode given signal by applying scaling and offset.
 *
 * @param[in] value Signal to decode.
 *
 * @return Decoded signal.
 */
double sr439_cluster_general_information_rl_cluster_range_1_decode(uint16_t value);

/**
 * Check that given signal is in allowed range.
 *
 * @param[in] value Signal to check.
 *
 * @return true if in range, false otherwise.
 */
bool sr439_cluster_general_information_rl_cluster_range_1_is_in_range(uint16_t value);

/**
 * Encode given signal by applying scaling and offset.
 *
 * @param[in] value Signal to encode.
 *
 * @return Encoded signal.
 */
uint16_t sr439_cluster_general_information_rl_cluster_velocity_1_encode(double value);

/**
 * Decode given signal by applying scaling and offset.
 *
 * @param[in] value Signal to decode.
 *
 * @return Decoded signal.
 */
double sr439_cluster_general_information_rl_cluster_velocity_1_decode(uint16_t value);

/**
 * Check that given signal is in allowed range.
 *
 * @param[in] value Signal to check.
 *
 * @return true if in range, false otherwise.
 */
bool sr439_cluster_general_information_rl_cluster_velocity_1_is_in_range(uint16_t value);

/**
 * Encode given signal by applying scaling and offset.
 *
 * @param[in] value Signal to encode.
 *
 * @return Encoded signal.
 */
uint16_t sr439_cluster_general_information_rl_cluster_azimuth_1_encode(double value);

/**
 * Decode given signal by applying scaling and offset.
 *
 * @param[in] value Signal to decode.
 *
 * @return Decoded signal.
 */
double sr439_cluster_general_information_rl_cluster_azimuth_1_decode(uint16_t value);

/**
 * Check that given signal is in allowed range.
 *
 * @param[in] value Signal to check.
 *
 * @return true if in range, false otherwise.
 */
bool sr439_cluster_general_information_rl_cluster_azimuth_1_is_in_range(uint16_t value);

/**
 * Encode given signal by applying scaling and offset.
 *
 * @param[in] value Signal to encode.
 *
 * @return Encoded signal.
 */
uint16_t sr439_cluster_general_information_rl_cluster_elevation_1_encode(double value);

/**
 * Decode given signal by applying scaling and offset.
 *
 * @param[in] value Signal to decode.
 *
 * @return Decoded signal.
 */
double sr439_cluster_general_information_rl_cluster_elevation_1_decode(uint16_t value);

/**
 * Check that given signal is in allowed range.
 *
 * @param[in] value Signal to check.
 *
 * @return true if in range, false otherwise.
 */
bool sr439_cluster_general_information_rl_cluster_elevation_1_is_in_range(uint16_t value);

/**
 * Encode given signal by applying scaling and offset.
 *
 * @param[in] value Signal to encode.
 *
 * @return Encoded signal.
 */
uint8_t sr439_cluster_general_information_rl_cluster_dyn_prop_1_encode(double value);

/**
 * Decode given signal by applying scaling and offset.
 *
 * @param[in] value Signal to decode.
 *
 * @return Decoded signal.
 */
double sr439_cluster_general_information_rl_cluster_dyn_prop_1_decode(uint8_t value);

/**
 * Check that given signal is in allowed range.
 *
 * @param[in] value Signal to check.
 *
 * @return true if in range, false otherwise.
 */
bool sr439_cluster_general_information_rl_cluster_dyn_prop_1_is_in_range(uint8_t value);

/**
 * Encode given signal by applying scaling and offset.
 *
 * @param[in] value Signal to encode.
 *
 * @return Encoded signal.
 */
uint8_t sr439_cluster_general_information_rl_cluster_prob_of_exist_1_encode(double value);

/**
 * Decode given signal by applying scaling and offset.
 *
 * @param[in] value Signal to decode.
 *
 * @return Decoded signal.
 */
double sr439_cluster_general_information_rl_cluster_prob_of_exist_1_decode(uint8_t value);

/**
 * Check that given signal is in allowed range.
 *
 * @param[in] value Signal to check.
 *
 * @return true if in range, false otherwise.
 */
bool sr439_cluster_general_information_rl_cluster_prob_of_exist_1_is_in_range(uint8_t value);

/**
 * Encode given signal by applying scaling and offset.
 *
 * @param[in] value Signal to encode.
 *
 * @return Encoded signal.
 */
uint8_t sr439_cluster_general_information_rl_cluster_rcs_1_encode(double value);

/**
 * Decode given signal by applying scaling and offset.
 *
 * @param[in] value Signal to decode.
 *
 * @return Decoded signal.
 */
double sr439_cluster_general_information_rl_cluster_rcs_1_decode(uint8_t value);

/**
 * Check that given signal is in allowed range.
 *
 * @param[in] value Signal to check.
 *
 * @return true if in range, false otherwise.
 */
bool sr439_cluster_general_information_rl_cluster_rcs_1_is_in_range(uint8_t value);

/**
 * Encode given signal by applying scaling and offset.
 *
 * @param[in] value Signal to encode.
 *
 * @return Encoded signal.
 */
uint16_t sr439_cluster_general_information_rl_cluster_power_1_encode(double value);

/**
 * Decode given signal by applying scaling and offset.
 *
 * @param[in] value Signal to decode.
 *
 * @return Decoded signal.
 */
double sr439_cluster_general_information_rl_cluster_power_1_decode(uint16_t value);

/**
 * Check that given signal is in allowed range.
 *
 * @param[in] value Signal to check.
 *
 * @return true if in range, false otherwise.
 */
bool sr439_cluster_general_information_rl_cluster_power_1_is_in_range(uint16_t value);

/**
 * Encode given signal by applying scaling and offset.
 *
 * @param[in] value Signal to encode.
 *
 * @return Encoded signal.
 */
uint16_t sr439_cluster_general_information_rl_cluster_snr_1_encode(double value);

/**
 * Decode given signal by applying scaling and offset.
 *
 * @param[in] value Signal to decode.
 *
 * @return Decoded signal.
 */
double sr439_cluster_general_information_rl_cluster_snr_1_decode(uint16_t value);

/**
 * Check that given signal is in allowed range.
 *
 * @param[in] value Signal to check.
 *
 * @return true if in range, false otherwise.
 */
bool sr439_cluster_general_information_rl_cluster_snr_1_is_in_range(uint16_t value);

/**
 * Encode given signal by applying scaling and offset.
 *
 * @param[in] value Signal to encode.
 *
 * @return Encoded signal.
 */
uint8_t sr439_cluster_general_information_rl_cluster_id_2_encode(double value);

/**
 * Decode given signal by applying scaling and offset.
 *
 * @param[in] value Signal to decode.
 *
 * @return Decoded signal.
 */
double sr439_cluster_general_information_rl_cluster_id_2_decode(uint8_t value);

/**
 * Check that given signal is in allowed range.
 *
 * @param[in] value Signal to check.
 *
 * @return true if in range, false otherwise.
 */
bool sr439_cluster_general_information_rl_cluster_id_2_is_in_range(uint8_t value);

/**
 * Encode given signal by applying scaling and offset.
 *
 * @param[in] value Signal to encode.
 *
 * @return Encoded signal.
 */
uint16_t sr439_cluster_general_information_rl_cluster_range_2_encode(double value);

/**
 * Decode given signal by applying scaling and offset.
 *
 * @param[in] value Signal to decode.
 *
 * @return Decoded signal.
 */
double sr439_cluster_general_information_rl_cluster_range_2_decode(uint16_t value);

/**
 * Check that given signal is in allowed range.
 *
 * @param[in] value Signal to check.
 *
 * @return true if in range, false otherwise.
 */
bool sr439_cluster_general_information_rl_cluster_range_2_is_in_range(uint16_t value);

/**
 * Encode given signal by applying scaling and offset.
 *
 * @param[in] value Signal to encode.
 *
 * @return Encoded signal.
 */
uint16_t sr439_cluster_general_information_rl_cluster_velocity_2_encode(double value);

/**
 * Decode given signal by applying scaling and offset.
 *
 * @param[in] value Signal to decode.
 *
 * @return Decoded signal.
 */
double sr439_cluster_general_information_rl_cluster_velocity_2_decode(uint16_t value);

/**
 * Check that given signal is in allowed range.
 *
 * @param[in] value Signal to check.
 *
 * @return true if in range, false otherwise.
 */
bool sr439_cluster_general_information_rl_cluster_velocity_2_is_in_range(uint16_t value);

/**
 * Encode given signal by applying scaling and offset.
 *
 * @param[in] value Signal to encode.
 *
 * @return Encoded signal.
 */
uint16_t sr439_cluster_general_information_rl_cluster_azimuth_2_encode(double value);

/**
 * Decode given signal by applying scaling and offset.
 *
 * @param[in] value Signal to decode.
 *
 * @return Decoded signal.
 */
double sr439_cluster_general_information_rl_cluster_azimuth_2_decode(uint16_t value);

/**
 * Check that given signal is in allowed range.
 *
 * @param[in] value Signal to check.
 *
 * @return true if in range, false otherwise.
 */
bool sr439_cluster_general_information_rl_cluster_azimuth_2_is_in_range(uint16_t value);

/**
 * Encode given signal by applying scaling and offset.
 *
 * @param[in] value Signal to encode.
 *
 * @return Encoded signal.
 */
uint16_t sr439_cluster_general_information_rl_cluster_elevation_2_encode(double value);

/**
 * Decode given signal by applying scaling and offset.
 *
 * @param[in] value Signal to decode.
 *
 * @return Decoded signal.
 */
double sr439_cluster_general_information_rl_cluster_elevation_2_decode(uint16_t value);

/**
 * Check that given signal is in allowed range.
 *
 * @param[in] value Signal to check.
 *
 * @return true if in range, false otherwise.
 */
bool sr439_cluster_general_information_rl_cluster_elevation_2_is_in_range(uint16_t value);

/**
 * Encode given signal by applying scaling and offset.
 *
 * @param[in] value Signal to encode.
 *
 * @return Encoded signal.
 */
uint8_t sr439_cluster_general_information_rl_cluster_dyn_prop_2_encode(double value);

/**
 * Decode given signal by applying scaling and offset.
 *
 * @param[in] value Signal to decode.
 *
 * @return Decoded signal.
 */
double sr439_cluster_general_information_rl_cluster_dyn_prop_2_decode(uint8_t value);

/**
 * Check that given signal is in allowed range.
 *
 * @param[in] value Signal to check.
 *
 * @return true if in range, false otherwise.
 */
bool sr439_cluster_general_information_rl_cluster_dyn_prop_2_is_in_range(uint8_t value);

/**
 * Encode given signal by applying scaling and offset.
 *
 * @param[in] value Signal to encode.
 *
 * @return Encoded signal.
 */
uint8_t sr439_cluster_general_information_rl_cluster_prob_of_exist_2_encode(double value);

/**
 * Decode given signal by applying scaling and offset.
 *
 * @param[in] value Signal to decode.
 *
 * @return Decoded signal.
 */
double sr439_cluster_general_information_rl_cluster_prob_of_exist_2_decode(uint8_t value);

/**
 * Check that given signal is in allowed range.
 *
 * @param[in] value Signal to check.
 *
 * @return true if in range, false otherwise.
 */
bool sr439_cluster_general_information_rl_cluster_prob_of_exist_2_is_in_range(uint8_t value);

/**
 * Encode given signal by applying scaling and offset.
 *
 * @param[in] value Signal to encode.
 *
 * @return Encoded signal.
 */
uint8_t sr439_cluster_general_information_rl_cluster_rcs_2_encode(double value);

/**
 * Decode given signal by applying scaling and offset.
 *
 * @param[in] value Signal to decode.
 *
 * @return Decoded signal.
 */
double sr439_cluster_general_information_rl_cluster_rcs_2_decode(uint8_t value);

/**
 * Check that given signal is in allowed range.
 *
 * @param[in] value Signal to check.
 *
 * @return true if in range, false otherwise.
 */
bool sr439_cluster_general_information_rl_cluster_rcs_2_is_in_range(uint8_t value);

/**
 * Encode given signal by applying scaling and offset.
 *
 * @param[in] value Signal to encode.
 *
 * @return Encoded signal.
 */
uint16_t sr439_cluster_general_information_rl_cluster_power_2_encode(double value);

/**
 * Decode given signal by applying scaling and offset.
 *
 * @param[in] value Signal to decode.
 *
 * @return Decoded signal.
 */
double sr439_cluster_general_information_rl_cluster_power_2_decode(uint16_t value);

/**
 * Check that given signal is in allowed range.
 *
 * @param[in] value Signal to check.
 *
 * @return true if in range, false otherwise.
 */
bool sr439_cluster_general_information_rl_cluster_power_2_is_in_range(uint16_t value);

/**
 * Encode given signal by applying scaling and offset.
 *
 * @param[in] value Signal to encode.
 *
 * @return Encoded signal.
 */
uint16_t sr439_cluster_general_information_rl_cluster_snr_2_encode(double value);

/**
 * Decode given signal by applying scaling and offset.
 *
 * @param[in] value Signal to decode.
 *
 * @return Decoded signal.
 */
double sr439_cluster_general_information_rl_cluster_snr_2_decode(uint16_t value);

/**
 * Check that given signal is in allowed range.
 *
 * @param[in] value Signal to check.
 *
 * @return true if in range, false otherwise.
 */
bool sr439_cluster_general_information_rl_cluster_snr_2_is_in_range(uint16_t value);

/**
 * Encode given signal by applying scaling and offset.
 *
 * @param[in] value Signal to encode.
 *
 * @return Encoded signal.
 */
uint8_t sr439_cluster_general_information_rl_cluster_id_3_encode(double value);

/**
 * Decode given signal by applying scaling and offset.
 *
 * @param[in] value Signal to decode.
 *
 * @return Decoded signal.
 */
double sr439_cluster_general_information_rl_cluster_id_3_decode(uint8_t value);

/**
 * Check that given signal is in allowed range.
 *
 * @param[in] value Signal to check.
 *
 * @return true if in range, false otherwise.
 */
bool sr439_cluster_general_information_rl_cluster_id_3_is_in_range(uint8_t value);

/**
 * Encode given signal by applying scaling and offset.
 *
 * @param[in] value Signal to encode.
 *
 * @return Encoded signal.
 */
uint16_t sr439_cluster_general_information_rl_cluster_range_3_encode(double value);

/**
 * Decode given signal by applying scaling and offset.
 *
 * @param[in] value Signal to decode.
 *
 * @return Decoded signal.
 */
double sr439_cluster_general_information_rl_cluster_range_3_decode(uint16_t value);

/**
 * Check that given signal is in allowed range.
 *
 * @param[in] value Signal to check.
 *
 * @return true if in range, false otherwise.
 */
bool sr439_cluster_general_information_rl_cluster_range_3_is_in_range(uint16_t value);

/**
 * Encode given signal by applying scaling and offset.
 *
 * @param[in] value Signal to encode.
 *
 * @return Encoded signal.
 */
uint16_t sr439_cluster_general_information_rl_cluster_velocity_3_encode(double value);

/**
 * Decode given signal by applying scaling and offset.
 *
 * @param[in] value Signal to decode.
 *
 * @return Decoded signal.
 */
double sr439_cluster_general_information_rl_cluster_velocity_3_decode(uint16_t value);

/**
 * Check that given signal is in allowed range.
 *
 * @param[in] value Signal to check.
 *
 * @return true if in range, false otherwise.
 */
bool sr439_cluster_general_information_rl_cluster_velocity_3_is_in_range(uint16_t value);

/**
 * Encode given signal by applying scaling and offset.
 *
 * @param[in] value Signal to encode.
 *
 * @return Encoded signal.
 */
uint16_t sr439_cluster_general_information_rl_cluster_azimuth_3_encode(double value);

/**
 * Decode given signal by applying scaling and offset.
 *
 * @param[in] value Signal to decode.
 *
 * @return Decoded signal.
 */
double sr439_cluster_general_information_rl_cluster_azimuth_3_decode(uint16_t value);

/**
 * Check that given signal is in allowed range.
 *
 * @param[in] value Signal to check.
 *
 * @return true if in range, false otherwise.
 */
bool sr439_cluster_general_information_rl_cluster_azimuth_3_is_in_range(uint16_t value);

/**
 * Encode given signal by applying scaling and offset.
 *
 * @param[in] value Signal to encode.
 *
 * @return Encoded signal.
 */
uint16_t sr439_cluster_general_information_rl_cluster_elevation_3_encode(double value);

/**
 * Decode given signal by applying scaling and offset.
 *
 * @param[in] value Signal to decode.
 *
 * @return Decoded signal.
 */
double sr439_cluster_general_information_rl_cluster_elevation_3_decode(uint16_t value);

/**
 * Check that given signal is in allowed range.
 *
 * @param[in] value Signal to check.
 *
 * @return true if in range, false otherwise.
 */
bool sr439_cluster_general_information_rl_cluster_elevation_3_is_in_range(uint16_t value);

/**
 * Encode given signal by applying scaling and offset.
 *
 * @param[in] value Signal to encode.
 *
 * @return Encoded signal.
 */
uint8_t sr439_cluster_general_information_rl_cluster_dyn_prop_3_encode(double value);

/**
 * Decode given signal by applying scaling and offset.
 *
 * @param[in] value Signal to decode.
 *
 * @return Decoded signal.
 */
double sr439_cluster_general_information_rl_cluster_dyn_prop_3_decode(uint8_t value);

/**
 * Check that given signal is in allowed range.
 *
 * @param[in] value Signal to check.
 *
 * @return true if in range, false otherwise.
 */
bool sr439_cluster_general_information_rl_cluster_dyn_prop_3_is_in_range(uint8_t value);

/**
 * Encode given signal by applying scaling and offset.
 *
 * @param[in] value Signal to encode.
 *
 * @return Encoded signal.
 */
uint8_t sr439_cluster_general_information_rl_cluster_prob_of_exist_3_encode(double value);

/**
 * Decode given signal by applying scaling and offset.
 *
 * @param[in] value Signal to decode.
 *
 * @return Decoded signal.
 */
double sr439_cluster_general_information_rl_cluster_prob_of_exist_3_decode(uint8_t value);

/**
 * Check that given signal is in allowed range.
 *
 * @param[in] value Signal to check.
 *
 * @return true if in range, false otherwise.
 */
bool sr439_cluster_general_information_rl_cluster_prob_of_exist_3_is_in_range(uint8_t value);

/**
 * Encode given signal by applying scaling and offset.
 *
 * @param[in] value Signal to encode.
 *
 * @return Encoded signal.
 */
uint8_t sr439_cluster_general_information_rl_cluster_rcs_3_encode(double value);

/**
 * Decode given signal by applying scaling and offset.
 *
 * @param[in] value Signal to decode.
 *
 * @return Decoded signal.
 */
double sr439_cluster_general_information_rl_cluster_rcs_3_decode(uint8_t value);

/**
 * Check that given signal is in allowed range.
 *
 * @param[in] value Signal to check.
 *
 * @return true if in range, false otherwise.
 */
bool sr439_cluster_general_information_rl_cluster_rcs_3_is_in_range(uint8_t value);

/**
 * Encode given signal by applying scaling and offset.
 *
 * @param[in] value Signal to encode.
 *
 * @return Encoded signal.
 */
uint16_t sr439_cluster_general_information_rl_cluster_power_3_encode(double value);

/**
 * Decode given signal by applying scaling and offset.
 *
 * @param[in] value Signal to decode.
 *
 * @return Decoded signal.
 */
double sr439_cluster_general_information_rl_cluster_power_3_decode(uint16_t value);

/**
 * Check that given signal is in allowed range.
 *
 * @param[in] value Signal to check.
 *
 * @return true if in range, false otherwise.
 */
bool sr439_cluster_general_information_rl_cluster_power_3_is_in_range(uint16_t value);

/**
 * Encode given signal by applying scaling and offset.
 *
 * @param[in] value Signal to encode.
 *
 * @return Encoded signal.
 */
uint16_t sr439_cluster_general_information_rl_cluster_snr_3_encode(double value);

/**
 * Decode given signal by applying scaling and offset.
 *
 * @param[in] value Signal to decode.
 *
 * @return Decoded signal.
 */
double sr439_cluster_general_information_rl_cluster_snr_3_decode(uint16_t value);

/**
 * Check that given signal is in allowed range.
 *
 * @param[in] value Signal to check.
 *
 * @return true if in range, false otherwise.
 */
bool sr439_cluster_general_information_rl_cluster_snr_3_is_in_range(uint16_t value);

/**
 * Encode given signal by applying scaling and offset.
 *
 * @param[in] value Signal to encode.
 *
 * @return Encoded signal.
 */
uint8_t sr439_cluster_general_information_rl_cluster_id_4_encode(double value);

/**
 * Decode given signal by applying scaling and offset.
 *
 * @param[in] value Signal to decode.
 *
 * @return Decoded signal.
 */
double sr439_cluster_general_information_rl_cluster_id_4_decode(uint8_t value);

/**
 * Check that given signal is in allowed range.
 *
 * @param[in] value Signal to check.
 *
 * @return true if in range, false otherwise.
 */
bool sr439_cluster_general_information_rl_cluster_id_4_is_in_range(uint8_t value);

/**
 * Encode given signal by applying scaling and offset.
 *
 * @param[in] value Signal to encode.
 *
 * @return Encoded signal.
 */
uint16_t sr439_cluster_general_information_rl_cluster_range_4_encode(double value);

/**
 * Decode given signal by applying scaling and offset.
 *
 * @param[in] value Signal to decode.
 *
 * @return Decoded signal.
 */
double sr439_cluster_general_information_rl_cluster_range_4_decode(uint16_t value);

/**
 * Check that given signal is in allowed range.
 *
 * @param[in] value Signal to check.
 *
 * @return true if in range, false otherwise.
 */
bool sr439_cluster_general_information_rl_cluster_range_4_is_in_range(uint16_t value);

/**
 * Encode given signal by applying scaling and offset.
 *
 * @param[in] value Signal to encode.
 *
 * @return Encoded signal.
 */
uint16_t sr439_cluster_general_information_rl_cluster_velocity_4_encode(double value);

/**
 * Decode given signal by applying scaling and offset.
 *
 * @param[in] value Signal to decode.
 *
 * @return Decoded signal.
 */
double sr439_cluster_general_information_rl_cluster_velocity_4_decode(uint16_t value);

/**
 * Check that given signal is in allowed range.
 *
 * @param[in] value Signal to check.
 *
 * @return true if in range, false otherwise.
 */
bool sr439_cluster_general_information_rl_cluster_velocity_4_is_in_range(uint16_t value);

/**
 * Encode given signal by applying scaling and offset.
 *
 * @param[in] value Signal to encode.
 *
 * @return Encoded signal.
 */
uint16_t sr439_cluster_general_information_rl_cluster_azimuth_4_encode(double value);

/**
 * Decode given signal by applying scaling and offset.
 *
 * @param[in] value Signal to decode.
 *
 * @return Decoded signal.
 */
double sr439_cluster_general_information_rl_cluster_azimuth_4_decode(uint16_t value);

/**
 * Check that given signal is in allowed range.
 *
 * @param[in] value Signal to check.
 *
 * @return true if in range, false otherwise.
 */
bool sr439_cluster_general_information_rl_cluster_azimuth_4_is_in_range(uint16_t value);

/**
 * Encode given signal by applying scaling and offset.
 *
 * @param[in] value Signal to encode.
 *
 * @return Encoded signal.
 */
uint16_t sr439_cluster_general_information_rl_cluster_elevation_4_encode(double value);

/**
 * Decode given signal by applying scaling and offset.
 *
 * @param[in] value Signal to decode.
 *
 * @return Decoded signal.
 */
double sr439_cluster_general_information_rl_cluster_elevation_4_decode(uint16_t value);

/**
 * Check that given signal is in allowed range.
 *
 * @param[in] value Signal to check.
 *
 * @return true if in range, false otherwise.
 */
bool sr439_cluster_general_information_rl_cluster_elevation_4_is_in_range(uint16_t value);

/**
 * Encode given signal by applying scaling and offset.
 *
 * @param[in] value Signal to encode.
 *
 * @return Encoded signal.
 */
uint8_t sr439_cluster_general_information_rl_cluster_dyn_prop_4_encode(double value);

/**
 * Decode given signal by applying scaling and offset.
 *
 * @param[in] value Signal to decode.
 *
 * @return Decoded signal.
 */
double sr439_cluster_general_information_rl_cluster_dyn_prop_4_decode(uint8_t value);

/**
 * Check that given signal is in allowed range.
 *
 * @param[in] value Signal to check.
 *
 * @return true if in range, false otherwise.
 */
bool sr439_cluster_general_information_rl_cluster_dyn_prop_4_is_in_range(uint8_t value);

/**
 * Encode given signal by applying scaling and offset.
 *
 * @param[in] value Signal to encode.
 *
 * @return Encoded signal.
 */
uint8_t sr439_cluster_general_information_rl_cluster_prob_of_exist_4_encode(double value);

/**
 * Decode given signal by applying scaling and offset.
 *
 * @param[in] value Signal to decode.
 *
 * @return Decoded signal.
 */
double sr439_cluster_general_information_rl_cluster_prob_of_exist_4_decode(uint8_t value);

/**
 * Check that given signal is in allowed range.
 *
 * @param[in] value Signal to check.
 *
 * @return true if in range, false otherwise.
 */
bool sr439_cluster_general_information_rl_cluster_prob_of_exist_4_is_in_range(uint8_t value);

/**
 * Encode given signal by applying scaling and offset.
 *
 * @param[in] value Signal to encode.
 *
 * @return Encoded signal.
 */
uint8_t sr439_cluster_general_information_rl_cluster_rcs_4_encode(double value);

/**
 * Decode given signal by applying scaling and offset.
 *
 * @param[in] value Signal to decode.
 *
 * @return Decoded signal.
 */
double sr439_cluster_general_information_rl_cluster_rcs_4_decode(uint8_t value);

/**
 * Check that given signal is in allowed range.
 *
 * @param[in] value Signal to check.
 *
 * @return true if in range, false otherwise.
 */
bool sr439_cluster_general_information_rl_cluster_rcs_4_is_in_range(uint8_t value);

/**
 * Encode given signal by applying scaling and offset.
 *
 * @param[in] value Signal to encode.
 *
 * @return Encoded signal.
 */
uint16_t sr439_cluster_general_information_rl_cluster_power_4_encode(double value);

/**
 * Decode given signal by applying scaling and offset.
 *
 * @param[in] value Signal to decode.
 *
 * @return Decoded signal.
 */
double sr439_cluster_general_information_rl_cluster_power_4_decode(uint16_t value);

/**
 * Check that given signal is in allowed range.
 *
 * @param[in] value Signal to check.
 *
 * @return true if in range, false otherwise.
 */
bool sr439_cluster_general_information_rl_cluster_power_4_is_in_range(uint16_t value);

/**
 * Encode given signal by applying scaling and offset.
 *
 * @param[in] value Signal to encode.
 *
 * @return Encoded signal.
 */
uint16_t sr439_cluster_general_information_rl_cluster_snr_4_encode(double value);

/**
 * Decode given signal by applying scaling and offset.
 *
 * @param[in] value Signal to decode.
 *
 * @return Decoded signal.
 */
double sr439_cluster_general_information_rl_cluster_snr_4_decode(uint16_t value);

/**
 * Check that given signal is in allowed range.
 *
 * @param[in] value Signal to check.
 *
 * @return true if in range, false otherwise.
 */
bool sr439_cluster_general_information_rl_cluster_snr_4_is_in_range(uint16_t value);

/**
 * Encode given signal by applying scaling and offset.
 *
 * @param[in] value Signal to encode.
 *
 * @return Encoded signal.
 */
uint8_t sr439_cluster_general_information_rl_cluster_id_5_encode(double value);

/**
 * Decode given signal by applying scaling and offset.
 *
 * @param[in] value Signal to decode.
 *
 * @return Decoded signal.
 */
double sr439_cluster_general_information_rl_cluster_id_5_decode(uint8_t value);

/**
 * Check that given signal is in allowed range.
 *
 * @param[in] value Signal to check.
 *
 * @return true if in range, false otherwise.
 */
bool sr439_cluster_general_information_rl_cluster_id_5_is_in_range(uint8_t value);

/**
 * Encode given signal by applying scaling and offset.
 *
 * @param[in] value Signal to encode.
 *
 * @return Encoded signal.
 */
uint16_t sr439_cluster_general_information_rl_cluster_range_5_encode(double value);

/**
 * Decode given signal by applying scaling and offset.
 *
 * @param[in] value Signal to decode.
 *
 * @return Decoded signal.
 */
double sr439_cluster_general_information_rl_cluster_range_5_decode(uint16_t value);

/**
 * Check that given signal is in allowed range.
 *
 * @param[in] value Signal to check.
 *
 * @return true if in range, false otherwise.
 */
bool sr439_cluster_general_information_rl_cluster_range_5_is_in_range(uint16_t value);

/**
 * Encode given signal by applying scaling and offset.
 *
 * @param[in] value Signal to encode.
 *
 * @return Encoded signal.
 */
uint16_t sr439_cluster_general_information_rl_cluster_velocity_5_encode(double value);

/**
 * Decode given signal by applying scaling and offset.
 *
 * @param[in] value Signal to decode.
 *
 * @return Decoded signal.
 */
double sr439_cluster_general_information_rl_cluster_velocity_5_decode(uint16_t value);

/**
 * Check that given signal is in allowed range.
 *
 * @param[in] value Signal to check.
 *
 * @return true if in range, false otherwise.
 */
bool sr439_cluster_general_information_rl_cluster_velocity_5_is_in_range(uint16_t value);

/**
 * Encode given signal by applying scaling and offset.
 *
 * @param[in] value Signal to encode.
 *
 * @return Encoded signal.
 */
uint16_t sr439_cluster_general_information_rl_cluster_azimuth_5_encode(double value);

/**
 * Decode given signal by applying scaling and offset.
 *
 * @param[in] value Signal to decode.
 *
 * @return Decoded signal.
 */
double sr439_cluster_general_information_rl_cluster_azimuth_5_decode(uint16_t value);

/**
 * Check that given signal is in allowed range.
 *
 * @param[in] value Signal to check.
 *
 * @return true if in range, false otherwise.
 */
bool sr439_cluster_general_information_rl_cluster_azimuth_5_is_in_range(uint16_t value);

/**
 * Encode given signal by applying scaling and offset.
 *
 * @param[in] value Signal to encode.
 *
 * @return Encoded signal.
 */
uint16_t sr439_cluster_general_information_rl_cluster_elevation_5_encode(double value);

/**
 * Decode given signal by applying scaling and offset.
 *
 * @param[in] value Signal to decode.
 *
 * @return Decoded signal.
 */
double sr439_cluster_general_information_rl_cluster_elevation_5_decode(uint16_t value);

/**
 * Check that given signal is in allowed range.
 *
 * @param[in] value Signal to check.
 *
 * @return true if in range, false otherwise.
 */
bool sr439_cluster_general_information_rl_cluster_elevation_5_is_in_range(uint16_t value);

/**
 * Encode given signal by applying scaling and offset.
 *
 * @param[in] value Signal to encode.
 *
 * @return Encoded signal.
 */
uint8_t sr439_cluster_general_information_rl_cluster_dyn_prop_5_encode(double value);

/**
 * Decode given signal by applying scaling and offset.
 *
 * @param[in] value Signal to decode.
 *
 * @return Decoded signal.
 */
double sr439_cluster_general_information_rl_cluster_dyn_prop_5_decode(uint8_t value);

/**
 * Check that given signal is in allowed range.
 *
 * @param[in] value Signal to check.
 *
 * @return true if in range, false otherwise.
 */
bool sr439_cluster_general_information_rl_cluster_dyn_prop_5_is_in_range(uint8_t value);

/**
 * Encode given signal by applying scaling and offset.
 *
 * @param[in] value Signal to encode.
 *
 * @return Encoded signal.
 */
uint8_t sr439_cluster_general_information_rl_cluster_prob_of_exist_5_encode(double value);

/**
 * Decode given signal by applying scaling and offset.
 *
 * @param[in] value Signal to decode.
 *
 * @return Decoded signal.
 */
double sr439_cluster_general_information_rl_cluster_prob_of_exist_5_decode(uint8_t value);

/**
 * Check that given signal is in allowed range.
 *
 * @param[in] value Signal to check.
 *
 * @return true if in range, false otherwise.
 */
bool sr439_cluster_general_information_rl_cluster_prob_of_exist_5_is_in_range(uint8_t value);

/**
 * Encode given signal by applying scaling and offset.
 *
 * @param[in] value Signal to encode.
 *
 * @return Encoded signal.
 */
uint8_t sr439_cluster_general_information_rl_cluster_rcs_5_encode(double value);

/**
 * Decode given signal by applying scaling and offset.
 *
 * @param[in] value Signal to decode.
 *
 * @return Decoded signal.
 */
double sr439_cluster_general_information_rl_cluster_rcs_5_decode(uint8_t value);

/**
 * Check that given signal is in allowed range.
 *
 * @param[in] value Signal to check.
 *
 * @return true if in range, false otherwise.
 */
bool sr439_cluster_general_information_rl_cluster_rcs_5_is_in_range(uint8_t value);

/**
 * Encode given signal by applying scaling and offset.
 *
 * @param[in] value Signal to encode.
 *
 * @return Encoded signal.
 */
uint16_t sr439_cluster_general_information_rl_cluster_power_5_encode(double value);

/**
 * Decode given signal by applying scaling and offset.
 *
 * @param[in] value Signal to decode.
 *
 * @return Decoded signal.
 */
double sr439_cluster_general_information_rl_cluster_power_5_decode(uint16_t value);

/**
 * Check that given signal is in allowed range.
 *
 * @param[in] value Signal to check.
 *
 * @return true if in range, false otherwise.
 */
bool sr439_cluster_general_information_rl_cluster_power_5_is_in_range(uint16_t value);

/**
 * Encode given signal by applying scaling and offset.
 *
 * @param[in] value Signal to encode.
 *
 * @return Encoded signal.
 */
uint16_t sr439_cluster_general_information_rl_cluster_snr_5_encode(double value);

/**
 * Decode given signal by applying scaling and offset.
 *
 * @param[in] value Signal to decode.
 *
 * @return Decoded signal.
 */
double sr439_cluster_general_information_rl_cluster_snr_5_decode(uint16_t value);

/**
 * Check that given signal is in allowed range.
 *
 * @param[in] value Signal to check.
 *
 * @return true if in range, false otherwise.
 */
bool sr439_cluster_general_information_rl_cluster_snr_5_is_in_range(uint16_t value);

/**
 * Pack message Cluster_Header_RL.
 *
 * @param[out] dst_p Buffer to pack the message into.
 * @param[in] src_p Data to pack.
 * @param[in] size Size of dst_p.
 *
 * @return Size of packed data, or negative error code.
 */
int sr439_cluster_header_rl_pack(
    uint8_t *dst_p,
    const struct sr439_cluster_header_rl_t *src_p,
    size_t size);

/**
 * Unpack message Cluster_Header_RL.
 *
 * @param[out] dst_p Object to unpack the message into.
 * @param[in] src_p Message to unpack.
 * @param[in] size Size of src_p.
 *
 * @return zero(0) or negative error code.
 */
int sr439_cluster_header_rl_unpack(
    struct sr439_cluster_header_rl_t *dst_p,
    const uint8_t *src_p,
    size_t size);

/**
 * Init message fields to default values from Cluster_Header_RL.
 *
 * @param[in] msg_p Message to init.
 *
 * @return zero(0) on success or (-1) in case of nullptr argument.
 */
int sr439_cluster_header_rl_init(struct sr439_cluster_header_rl_t *msg_p);

/**
 * Encode given signal by applying scaling and offset.
 *
 * @param[in] value Signal to encode.
 *
 * @return Encoded signal.
 */
uint8_t sr439_cluster_header_rl_cluster_frame_type_encode(double value);

/**
 * Decode given signal by applying scaling and offset.
 *
 * @param[in] value Signal to decode.
 *
 * @return Decoded signal.
 */
double sr439_cluster_header_rl_cluster_frame_type_decode(uint8_t value);

/**
 * Check that given signal is in allowed range.
 *
 * @param[in] value Signal to check.
 *
 * @return true if in range, false otherwise.
 */
bool sr439_cluster_header_rl_cluster_frame_type_is_in_range(uint8_t value);

/**
 * Encode given signal by applying scaling and offset.
 *
 * @param[in] value Signal to encode.
 *
 * @return Encoded signal.
 */
uint32_t sr439_cluster_header_rl_cluster_frame_num_encode(double value);

/**
 * Decode given signal by applying scaling and offset.
 *
 * @param[in] value Signal to decode.
 *
 * @return Decoded signal.
 */
double sr439_cluster_header_rl_cluster_frame_num_decode(uint32_t value);

/**
 * Check that given signal is in allowed range.
 *
 * @param[in] value Signal to check.
 *
 * @return true if in range, false otherwise.
 */
bool sr439_cluster_header_rl_cluster_frame_num_is_in_range(uint32_t value);

/**
 * Encode given signal by applying scaling and offset.
 *
 * @param[in] value Signal to encode.
 *
 * @return Encoded signal.
 */
uint8_t sr439_cluster_header_rl_cluster_target_number_encode(double value);

/**
 * Decode given signal by applying scaling and offset.
 *
 * @param[in] value Signal to decode.
 *
 * @return Decoded signal.
 */
double sr439_cluster_header_rl_cluster_target_number_decode(uint8_t value);

/**
 * Check that given signal is in allowed range.
 *
 * @param[in] value Signal to check.
 *
 * @return true if in range, false otherwise.
 */
bool sr439_cluster_header_rl_cluster_target_number_is_in_range(uint8_t value);

/**
 * Encode given signal by applying scaling and offset.
 *
 * @param[in] value Signal to encode.
 *
 * @return Encoded signal.
 */
uint32_t sr439_cluster_header_rl_cluster_timestamp_encode(double value);

/**
 * Decode given signal by applying scaling and offset.
 *
 * @param[in] value Signal to decode.
 *
 * @return Decoded signal.
 */
double sr439_cluster_header_rl_cluster_timestamp_decode(uint32_t value);

/**
 * Check that given signal is in allowed range.
 *
 * @param[in] value Signal to check.
 *
 * @return true if in range, false otherwise.
 */
bool sr439_cluster_header_rl_cluster_timestamp_is_in_range(uint32_t value);

/**
 * Encode given signal by applying scaling and offset.
 *
 * @param[in] value Signal to encode.
 *
 * @return Encoded signal.
 */
uint8_t sr439_cluster_header_rl_cluster_radar_identify_encode(double value);

/**
 * Decode given signal by applying scaling and offset.
 *
 * @param[in] value Signal to decode.
 *
 * @return Decoded signal.
 */
double sr439_cluster_header_rl_cluster_radar_identify_decode(uint8_t value);

/**
 * Check that given signal is in allowed range.
 *
 * @param[in] value Signal to check.
 *
 * @return true if in range, false otherwise.
 */
bool sr439_cluster_header_rl_cluster_radar_identify_is_in_range(uint8_t value);

/**
 * Encode given signal by applying scaling and offset.
 *
 * @param[in] value Signal to encode.
 *
 * @return Encoded signal.
 */
uint16_t sr439_cluster_header_rl_cluster_vehicle_speed_encode(double value);

/**
 * Decode given signal by applying scaling and offset.
 *
 * @param[in] value Signal to decode.
 *
 * @return Decoded signal.
 */
double sr439_cluster_header_rl_cluster_vehicle_speed_decode(uint16_t value);

/**
 * Check that given signal is in allowed range.
 *
 * @param[in] value Signal to check.
 *
 * @return true if in range, false otherwise.
 */
bool sr439_cluster_header_rl_cluster_vehicle_speed_is_in_range(uint16_t value);

/**
 * Encode given signal by applying scaling and offset.
 *
 * @param[in] value Signal to encode.
 *
 * @return Encoded signal.
 */
uint16_t sr439_cluster_header_rl_cluster_yaw_rate_encode(double value);

/**
 * Decode given signal by applying scaling and offset.
 *
 * @param[in] value Signal to decode.
 *
 * @return Decoded signal.
 */
double sr439_cluster_header_rl_cluster_yaw_rate_decode(uint16_t value);

/**
 * Check that given signal is in allowed range.
 *
 * @param[in] value Signal to check.
 *
 * @return true if in range, false otherwise.
 */
bool sr439_cluster_header_rl_cluster_yaw_rate_is_in_range(uint16_t value);

/**
 * Encode given signal by applying scaling and offset.
 *
 * @param[in] value Signal to encode.
 *
 * @return Encoded signal.
 */
uint8_t sr439_cluster_header_rl_cluster_gear_st_encode(double value);

/**
 * Decode given signal by applying scaling and offset.
 *
 * @param[in] value Signal to decode.
 *
 * @return Decoded signal.
 */
double sr439_cluster_header_rl_cluster_gear_st_decode(uint8_t value);

/**
 * Check that given signal is in allowed range.
 *
 * @param[in] value Signal to check.
 *
 * @return true if in range, false otherwise.
 */
bool sr439_cluster_header_rl_cluster_gear_st_is_in_range(uint8_t value);


#ifdef __cplusplus
}
#endif

#endif
